[data-org-world] {
  --orgw-cream: #fff8ec;
  --orgw-paper: #fff3dd;
  --orgw-wood: #7d552d;
  --orgw-wood-dark: #4f3318;
  --orgw-gold: #e2b66a;
  --orgw-green: #335f2b;
  --orgw-shadow: 0 20px 50px rgba(36, 24, 8, 0.22);
  font-family: "Trebuchet MS", "Segoe UI", sans-serif;
  color: #2f2418;
}

[data-org-world] *,
[data-org-world] *::before,
[data-org-world] *::after {
  box-sizing: border-box;
}

.orgw-shell {
  max-width: 1920px;
  margin: 0 auto;
  position: relative;
}

.orgw-world {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--orgw-shadow);
  background: #d8f0b8;
}

.orgw-world-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.orgw-hotspot,
.orgw-topbar,
.orgw-utility-buttons,
.orgw-scene-note,
.orgw-ork-panel,
.orgw-plot {
  position: absolute;
}

.orgw-topbar,
.orgw-utility-buttons,
.orgw-scene-note,
.orgw-ork-panel,
.orgw-task-summary,
.orgw-wood-label,
.orgw-plot-empty-badge,
.orgw-plot-overlay,
.orgw-grow-time,
.orgw-pen-label {
  backdrop-filter: blur(3px);
}

.orgw-topbar {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.8%;
  z-index: 3;
}

.orgw-stat {
  background: linear-gradient(180deg, rgba(255, 248, 231, 0.98), rgba(244, 228, 196, 0.96));
  border: 2px solid rgba(135, 92, 47, 0.35);
  border-radius: 18px;
  padding: 12px 16px;
  box-shadow: 0 10px 25px rgba(72, 47, 20, 0.12);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

.orgw-stat b {
  font-size: 0.74rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #87633a;
}

.orgw-stat span {
  font-size: 1.22rem;
  font-weight: 800;
}

.orgw-utility-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  z-index: 4;
}

.orgw-hotspot {
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  transition: transform 0.18s ease, filter 0.18s ease;
  z-index: 2;
  -webkit-tap-highlight-color: transparent;
}

.orgw-hotspot:hover,
.orgw-hotspot:focus-visible {
  transform: translateY(-2px) scale(1.01);
  filter: drop-shadow(0 10px 20px rgba(31, 21, 6, 0.22));
  outline: none;
}

/* Prevent WordPress themes from painting large coloured button rectangles. */
[data-org-world] button.orgw-hotspot,
[data-org-world] button.orgw-hotspot:hover,
[data-org-world] button.orgw-hotspot:focus,
[data-org-world] button.orgw-hotspot:focus-visible,
[data-org-world] button.orgw-hotspot:active,
[data-org-world] button.orgw-hotspot::before,
[data-org-world] button.orgw-hotspot::after,
[data-org-world] button.orgw-plot-main,
[data-org-world] button.orgw-plot-main:hover,
[data-org-world] button.orgw-plot-main:focus,
[data-org-world] button.orgw-plot-main:focus-visible,
[data-org-world] button.orgw-plot-main:active,
[data-org-world] button.orgw-plot-main::before,
[data-org-world] button.orgw-plot-main::after {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  text-shadow: none !important;
  color: transparent !important;
}

[data-org-world] .orgw-pen,
[data-org-world] .orgw-pen:hover,
[data-org-world] .orgw-pen:focus,
[data-org-world] .orgw-pen:focus-visible,
[data-org-world] .orgw-pen:active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

.orgw-house img,
.orgw-market-cart img,
.orgw-well img,
.orgw-task-board img,
.orgw-pen > img,
.orgw-wood-action img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}

.orgw-task-board,
.orgw-house,
.orgw-market-cart,
.orgw-well,
.orgw-pen,
.orgw-wood-action {
  overflow: visible;
}

.orgw-task-summary {
  position: absolute;
  left: 17%;
  right: 17%;
  top: 24%;
  min-height: 32%;
  border-radius: 18px;
  background: rgba(255, 248, 229, 0.84);
  border: 1px solid rgba(136, 96, 40, 0.14);
  display: grid;
  place-content: center;
  text-align: center;
  padding: 10px;
  color: #4e3516;
  box-shadow: 0 12px 22px rgba(58, 41, 19, 0.1);
}

.orgw-task-summary-title,
.orgw-task-summary-meta {
  display: block;
}

.orgw-task-summary-title {
  font-size: 0.86rem;
  font-weight: 800;
}

.orgw-task-summary-meta {
  font-size: 0.72rem;
  margin-top: 4px;
  opacity: 0.86;
}

.orgw-wood-action img {
  position: absolute;
  inset: 12% 0 0;
  width: 100% !important;
  height: 88% !important;
  object-fit: contain;
}

.orgw-wood-label {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  max-width: 150%;
  background: rgba(255, 250, 239, 0.96);
  border: 1px solid rgba(135, 92, 47, 0.25);
  border-radius: 999px;
  padding: 7px 12px;
  font-size: 0.72rem;
  font-weight: 700;
  color: #5b3a1e;
  box-shadow: 0 8px 18px rgba(64, 43, 17, 0.12);
  white-space: nowrap;
}

.orgw-wood-storage-label b { font: inherit; }

.orgw-plots {
  position: absolute;
  inset: 0;
  z-index: auto;
  pointer-events: none;
}

.orgw-plot {
  overflow: visible;
  isolation: isolate;
  pointer-events: none;
}

/* v0.27.3: every field phase uses the same proportional width and baseline.
   Backend changes are applied through shared variables on the plots layer, so
   empty, needs-water/growing and ready artwork can never drift apart. */
.orgw-plot-image {
  position: absolute;
  left: 50%;
  bottom: var(--orgw-field-art-bottom, 0%);
  width: calc(100% * var(--orgw-field-art-scale, 1));
  height: auto;
  max-width: none;
  max-height: none;
  object-fit: contain;
  object-position: center bottom;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 1;
}

/* Only the visible field artwork receives pointer input. The JavaScript alpha envelope replaces this safe diamond fallback after the image loads. */
.orgw-plot-main {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent !important;
  padding: 0;
  margin: 0;
  cursor: pointer;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  z-index: 3;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}


.orgw-status-action,
.orgw-plot-level {
  pointer-events: auto;
}

.orgw-plot-empty-badge,
.orgw-plot-overlay {
  position: absolute;
  left: 50%;
  top: 51%;
  transform: translate(-50%, -50%);
  background: rgba(255, 247, 228, 0.92);
  color: #5b391d;
  border-radius: 18px;
  border: 2px solid rgba(137, 95, 43, 0.18);
  box-shadow: 0 12px 22px rgba(58, 41, 19, 0.1);
  text-align: center;
  line-height: 1.2;
  pointer-events: none;
  z-index: 4;
}

.orgw-plot-empty-badge {
  padding: 10px 14px;
  font-size: 0.88rem;
  font-weight: 800;
  white-space: nowrap;
}

.orgw-plot-overlay {
  width: 72%;
  padding: 12px 10px;
  font-size: 0.82rem;
  font-weight: 800;
}

.orgw-grow-time {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 252, 244, 0.98);
  font-size: 0.78rem;
  font-weight: 800;
  color: #5a3918;
  pointer-events: none;
  z-index: 5;
}

.orgw-progress {
  position: absolute;
  left: 18%;
  right: 18%;
  bottom: 9%;
  height: 9px;
  border-radius: 999px;
  background: rgba(87, 56, 22, 0.14);
  overflow: hidden;
  pointer-events: none;
  z-index: 5;
}

.orgw-progress i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #7bbc46, #43a948);
  border-radius: inherit;
}

/* Water and harvest bubbles remain compact and sit directly above the field. */
.orgw-status-bubble,
.orgw-status-bubble.is-ready {
  position: absolute;
  left: 50%;
  right: auto;
  top: -8%;
  width: clamp(42px, 19%, 74px);
  height: auto;
  max-height: 46%;
  object-fit: contain;
  transform: translateX(-50%);
  filter: drop-shadow(0 8px 13px rgba(60, 41, 15, 0.2));
  pointer-events: none;
  z-index: 6;
}

.orgw-plot-level {
  position: absolute;
  right: 5%;
  bottom: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(84, 54, 21, 0.88) !important;
  background-color: rgba(84, 54, 21, 0.88) !important;
  color: #fff8eb;
  padding: 6px 12px;
  font-size: 0.76rem;
  font-weight: 800;
  cursor: pointer;
  z-index: 7;
}

.orgw-pen-canvas {
  position: absolute;
  left: 7%;
  top: 8%;
  width: 86%;
  height: 58%;
  pointer-events: none;
}

.orgw-pen-status {
  position: absolute;
  right: -2%;
  top: 8%;
  width: 21% !important;
  height: auto !important;
  filter: drop-shadow(0 10px 16px rgba(60, 41, 15, 0.2));
}

.orgw-pen-label {
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: 8%;
  padding: 10px 14px;
  border-radius: 17px;
  background: rgba(255, 247, 228, 0.92);
  border: 1px solid rgba(136, 95, 43, 0.18);
  text-align: left;
  box-shadow: 0 10px 20px rgba(57, 39, 19, 0.12);
}

.orgw-pen-label strong,
.orgw-pen-label span {
  display: block;
}

.orgw-pen-label strong {
  font-size: 0.92rem;
}

.orgw-pen-label span {
  font-size: 0.78rem;
  color: #6e4f2d;
  margin-top: 2px;
}

.orgw-scene-note {
  display: grid;
  place-items: center;
  text-align: center;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(255, 248, 233, 0.92);
  border: 1px solid rgba(126, 83, 34, 0.22);
  font-size: 0.84rem;
  box-shadow: 0 10px 20px rgba(61, 43, 18, 0.1);
  z-index: 3;
}

.orgw-utility-buttons button,
.orgw-market-row button,
.orgw-recipe-card button,
.orgw-animal-row button,
.orgw-task-modal-row button,
.orgw-primary-action,
.orgw-secondary-action {
  border: 0;
  cursor: pointer;
  border-radius: 14px;
  font-weight: 800;
  font-size: 0.92rem;
  padding: 12px 16px;
  background: linear-gradient(180deg, #f0ca80, #dbb064);
  color: #51361b;
  box-shadow: 0 10px 20px rgba(104, 70, 24, 0.14);
}

.orgw-utility-buttons button:hover,
.orgw-market-row button:hover,
.orgw-recipe-card button:hover,
.orgw-animal-row button:hover,
.orgw-task-modal-row button:hover,
.orgw-primary-action:hover,
.orgw-secondary-action:hover {
  background: linear-gradient(180deg, #f5d592, #e6bc71);
}

.orgw-secondary-action {
  background: linear-gradient(180deg, #efe5d4, #ddcdae);
}

.orgw-market-row button[disabled],
.orgw-recipe-card button[disabled],
.orgw-utility-buttons button[disabled] {
  opacity: 0.48;
  cursor: not-allowed;
}

.orgw-ork-panel[hidden] { display: none !important; }

.orgw-ork-panel {
  z-index: 5;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  overflow: visible;
}

.orgw-ork-panel img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: left bottom;
  align-self: flex-end;
  pointer-events: auto;
  cursor: pointer;
  transform-origin: 45% 100%;
  filter: drop-shadow(0 12px 12px rgba(48, 33, 15, 0.28));
}

.orgw-visitor-panel {
  cursor: pointer;
  align-items: flex-end;
  background: transparent !important;
  pointer-events: none;
}

.orgw-visitor-copy {
  display: none;
}

.orgw-visitor-panel:focus-visible {
  outline: 3px solid rgba(255, 229, 137, 0.95);
  outline-offset: 4px;
  border-radius: 18px;
}

.orgw-visitor-panel.is-blinking img {
  animation: orgwQuestCharacterBlink 1.35s ease-in-out infinite;
}

@keyframes orgwQuestCharacterBlink {
  0%, 38%, 100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: drop-shadow(0 12px 12px rgba(48, 33, 15, 0.28)) brightness(1);
  }
  48% {
    opacity: 0.38;
    transform: translateY(-1.5%) scale(1.035);
    filter: drop-shadow(0 15px 16px rgba(217, 119, 6, 0.42)) brightness(1.24);
  }
  60% {
    opacity: 1;
    transform: translateY(0) scale(1.02);
    filter: drop-shadow(0 14px 15px rgba(217, 119, 6, 0.32)) brightness(1.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .orgw-visitor-panel.is-blinking img {
    animation: none;
    filter: drop-shadow(0 14px 16px rgba(217, 119, 6, 0.44)) brightness(1.12);
  }
}

.orgw-visitor-popup {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 20px;
  align-items: start;
}

.orgw-visitor-popup img {
  width: 100%;
  max-width: 180px;
  height: auto;
  object-fit: contain;
}

.orgw-visitor-popup-tag {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(84, 54, 21, 0.92);
  color: #fff8eb;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.orgw-visitor-popup-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.orgw-visitor-quest-list,
.orgw-visitor-note {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 252, 244, 0.92);
  border: 1px solid rgba(133, 91, 45, 0.14);
}

.orgw-visitor-quest-list strong {
  display: block;
  margin-bottom: 8px;
}

.orgw-visitor-quest-list ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.orgw-visitor-quest-list li { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 7px; border-bottom: 1px solid rgba(133,91,45,.12); }
.orgw-visitor-quest-list li:last-child { padding-bottom: 0; border-bottom: 0; }
.orgw-visitor-quest-list li span { white-space: nowrap; color: #6e4f2d; }
.orgw-visitor-quest-list li.is-complete { opacity: .66; text-decoration: line-through; }

.orgw-ork-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: 0;
  background: transparent;
  color: #7c5831;
  font-size: 1.5rem;
  cursor: pointer;
}

.orgw-modal[hidden] {
  display: none;
}

.orgw-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 20px;
}

.orgw-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 14, 7, 0.56);
}

.orgw-modal-card {
  position: relative;
  z-index: 1;
  width: min(860px, 100%);
  max-height: 88vh;
  overflow: auto;
  border-radius: 28px;
  padding: 28px;
  background: linear-gradient(180deg, #fff8eb, #f4ead4);
  box-shadow: 0 30px 70px rgba(20, 14, 7, 0.3);
}

.orgw-modal-close {
  position: absolute;
  right: 14px;
  top: 12px;
  border: 0;
  background: transparent;
  color: #7e5730;
  font-size: 1.8rem;
  cursor: pointer;
}

.orgw-modal-card h2,
.orgw-modal-card h3 {
  margin: 0 0 10px;
  color: #4d3318;
}

.orgw-modal-card p {
  color: #684c2c;
}

.orgw-choice-grid,
.orgw-market-list,
.orgw-animal-list,
.orgw-task-modal-list,
.orgw-inventory-list {
  display: grid;
  gap: 12px;
}

.orgw-choice-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.orgw-choice-card,
.orgw-market-row,
.orgw-animal-row,
.orgw-task-modal-row,
.orgw-inventory-row {
  background: rgba(255, 252, 244, 0.88);
  border: 1px solid rgba(133, 91, 45, 0.14);
  border-radius: 20px;
  box-shadow: 0 12px 22px rgba(67, 45, 18, 0.08);
}

.orgw-choice-card {
  border: 0;
  text-align: left;
  padding: 16px;
  cursor: pointer;
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 14px;
  align-items: center;
}

.orgw-choice-card img,
.orgw-market-row img,
.orgw-task-modal-row img,
.orgw-inventory-row img {
  width: 68px;
  height: 68px;
  object-fit: contain;
}

.orgw-choice-card strong,
.orgw-choice-card span,
.orgw-choice-card small,
.orgw-market-row strong,
.orgw-market-row span,
.orgw-animal-row strong,
.orgw-animal-row span,
.orgw-task-modal-row strong,
.orgw-task-modal-row span,
.orgw-inventory-row strong,
.orgw-inventory-row span {
  display: block;
}

.orgw-market-row,
.orgw-task-modal-row,
.orgw-inventory-row {
  display: grid;
  grid-template-columns: 76px 1fr auto auto;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
}

.orgw-inventory-row {
  grid-template-columns: 76px 1fr;
}

.orgw-animal-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px;
}

.orgw-task-modal-row {
  grid-template-columns: 76px 1fr auto;
}

.orgw-task-modal-row p {
  margin: 4px 0 8px;
}

.orgw-task-modal-row.is-complete {
  background: rgba(227, 248, 216, 0.94);
}

.orgw-check {
  font-size: 1.7rem;
  color: #3d8f35;
}

.orgw-delivery-feedback,
.orgw-wood-storage-card {
  display: grid;
  gap: 5px;
  margin: 14px 0;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(133, 91, 45, 0.16);
  background: rgba(255, 252, 244, 0.94);
}

.orgw-delivery-feedback strong,
.orgw-delivery-feedback span,
.orgw-wood-storage-card strong,
.orgw-wood-storage-card span { display: block; }
.orgw-delivery-feedback.is-success { background: rgba(227, 248, 216, .96); border-color: rgba(61,143,53,.25); }
.orgw-delivery-feedback.is-warning { background: rgba(255, 244, 204, .96); border-color: rgba(176,120,20,.28); }
.orgw-delivery-feedback.is-error { background: rgba(255, 229, 226, .96); border-color: rgba(179,45,46,.24); }
.orgw-wood-storage-card strong { font-size: 1.5rem; color: #4d3318; }

.orgw-pen-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.orgw-toast {
  position: fixed;
  left: 50%;
  bottom: 28px;
  transform: translateX(-50%) translateY(16px);
  background: rgba(41, 29, 13, 0.92);
  color: #fff8eb;
  padding: 12px 16px;
  border-radius: 999px;
  box-shadow: 0 18px 30px rgba(30, 20, 8, 0.32);
  opacity: 0;
  transition: opacity 0.18s ease, transform 0.18s ease;
  pointer-events: none;
  z-index: 10000;
}

.orgw-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

@media (max-width: 760px) {
  .orgw-visitor-popup {
    grid-template-columns: 1fr;
  }

  .orgw-visitor-popup img {
    max-width: 140px;
    margin: 0 auto;
  }
}

body.orgw-modal-open {
  overflow: hidden;
}

@media (max-width: 1180px) {
  .orgw-stat { padding: 10px 12px; }
  .orgw-stat span { font-size: 1.05rem; }
  .orgw-stat b { font-size: 0.68rem; }
  .orgw-plot-empty-badge { font-size: 0.74rem; }
  .orgw-plot-overlay { font-size: 0.72rem; }
  .orgw-task-summary-title { font-size: 0.74rem; }
  .orgw-task-summary-meta { font-size: 0.62rem; }
  .orgw-pen-label strong { font-size: 0.8rem; }
  .orgw-pen-label span,
  .orgw-scene-note,
  .orgw-grow-time,
  .orgw-wood-label { font-size: 0.7rem; }
}

@media (max-width: 860px) {
  .orgw-topbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .orgw-utility-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .orgw-market-row,
  .orgw-task-modal-row {
    grid-template-columns: 60px 1fr;
  }

  .orgw-market-row button,
  .orgw-task-modal-row button,
  .orgw-market-row i,
  .orgw-task-modal-row i,
  .orgw-check {
    grid-column: 2;
    justify-self: start;
  }

  .orgw-choice-grid {
    grid-template-columns: 1fr;
  }
}

/* v0.7.0: keep the Daily Tasks board above overlapping pen hit areas. */
[data-org-world] .orgw-task-board {
  z-index: 12;
  pointer-events: auto;
  isolation: isolate;
}

[data-org-world] .orgw-task-summary {
  pointer-events: none;
}

/* v0.7.0: hard reset close buttons so WordPress themes cannot paint red hover boxes. */
[data-org-world] button.orgw-ork-close,
[data-org-world] button.orgw-ork-close:hover,
[data-org-world] button.orgw-ork-close:focus,
[data-org-world] button.orgw-ork-close:focus-visible,
[data-org-world] button.orgw-ork-close:active,
[data-org-world] button.orgw-modal-close,
[data-org-world] button.orgw-modal-close:hover,
[data-org-world] button.orgw-modal-close:focus,
[data-org-world] button.orgw-modal-close:focus-visible,
[data-org-world] button.orgw-modal-close:active {
  position: absolute;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  outline: none !important;
  color: #6b4827 !important;
  font: 700 26px/1 Arial, sans-serif !important;
  text-shadow: none !important;
  transform: none !important;
  filter: none !important;
  opacity: 0.9;
  cursor: pointer;
  z-index: 30;
  -webkit-appearance: none !important;
  appearance: none !important;
}

[data-org-world] button.orgw-ork-close,
[data-org-world] button.orgw-ork-close:hover,
[data-org-world] button.orgw-ork-close:focus,
[data-org-world] button.orgw-ork-close:focus-visible,
[data-org-world] button.orgw-ork-close:active {
  top: 7px;
  right: 8px;
}

[data-org-world] button.orgw-modal-close,
[data-org-world] button.orgw-modal-close:hover,
[data-org-world] button.orgw-modal-close:focus,
[data-org-world] button.orgw-modal-close:focus-visible,
[data-org-world] button.orgw-modal-close:active {
  top: 12px;
  right: 12px;
}

[data-org-world] button.orgw-ork-close:hover,
[data-org-world] button.orgw-modal-close:hover {
  opacity: 0.9;
}

.orgw-empty-tasks {
  margin: 0;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 252, 244, 0.9);
  border: 1px solid rgba(133, 91, 45, 0.14);
}

[data-org-world] button.orgw-ork-close::before,
[data-org-world] button.orgw-ork-close::after,
[data-org-world] button.orgw-modal-close::before,
[data-org-world] button.orgw-modal-close::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Keep the two neighbouring wood actions visually distinct. */
.orgw-wood-storage-label {
  top: auto;
  bottom: 0;
}

/* v0.8.5: simplify world labels and make status icons true click targets. */
.orgw-task-summary {
  display: none !important;
}

.orgw-plot-label {
  position: absolute;
  left: 50%;
  top: 51%;
  z-index: 7;
  transform: translate(-50%, -50%);
  max-width: 88%;
  padding: 9px 14px;
  border: 2px solid rgba(137, 95, 43, 0.18);
  border-radius: 18px;
  background: rgba(255, 247, 228, 0.94);
  color: #5b391d;
  box-shadow: 0 12px 22px rgba(58, 41, 19, 0.1);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
  white-space: nowrap;
  pointer-events: none;
  backdrop-filter: blur(3px);
}

.orgw-plot-label small {
  position: absolute;
  left: 50%;
  top: calc(100% + 7px);
  width: max-content;
  max-width: min(270px, 38vw);
  transform: translate(-50%, -4px);
  padding: 8px 11px;
  border: 1px solid rgba(133, 91, 45, 0.2);
  border-radius: 12px;
  background: rgba(255, 252, 244, 0.98);
  color: #654622;
  box-shadow: 0 10px 20px rgba(57, 39, 19, 0.16);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.3;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
}

.orgw-plot.is-pixel-hover .orgw-plot-label small,
.orgw-plot:focus-within .orgw-plot-label small {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

[data-org-world] button.orgw-status-action,
[data-org-world] button.orgw-status-action:hover,
[data-org-world] button.orgw-status-action:focus,
[data-org-world] button.orgw-status-action:focus-visible,
[data-org-world] button.orgw-status-action:active {
  position: absolute;
  left: 50%;
  top: -10%;
  z-index: 9;
  width: clamp(44px, 24%, 78px);
  height: auto;
  aspect-ratio: 1 / 1;
  transform: translateX(-50%);
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 24%;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  outline: none;
  cursor: pointer;
  appearance: none !important;
  -webkit-appearance: none !important;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}

[data-org-world] button.orgw-status-action:hover,
[data-org-world] button.orgw-status-action:focus-visible {
  transform: translateX(-50%) scale(1.07);
  filter: drop-shadow(0 10px 14px rgba(60, 41, 15, 0.26));
}


[data-org-world] button.orgw-status-action::before,
[data-org-world] button.orgw-status-action::after {
  content: none !important;
  display: none !important;
}

.orgw-status-action img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
}

.orgw-status-action.is-ready {
  width: clamp(42px, 21%, 72px) !important;
}

/* A planted field's water action stays inside that field instead of floating
   above it and colliding with neighbouring plots. */
[data-org-world] button.orgw-status-action.is-water,
[data-org-world] button.orgw-status-action.is-water:hover,
[data-org-world] button.orgw-status-action.is-water:focus,
[data-org-world] button.orgw-status-action.is-water:focus-visible,
[data-org-world] button.orgw-status-action.is-water:active {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

[data-org-world] button.orgw-status-action.is-water:hover,
[data-org-world] button.orgw-status-action.is-water:focus-visible {
  transform: translate(-50%, -50%) scale(1.07);
}

.orgw-plot.is-water .orgw-plot-label,
.orgw-plot.is-growing .orgw-plot-label {
  top: 76%;
}

/* Growing fields always show their live timer. The progress bar remains an
   optional hover/focus detail so the world stays uncluttered. */
.orgw-grow-time {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.16s ease, visibility 0.16s ease;
}

.orgw-progress {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.16s ease, visibility 0.16s ease;
}

.orgw-plot-level {
  opacity: 0;
  visibility: visible;
  pointer-events: none;
  transition: opacity 0.16s ease;
}

.orgw-plot.is-pixel-hover .orgw-grow-time,
.orgw-plot.is-pixel-hover .orgw-progress,
.orgw-plot.is-pixel-hover .orgw-plot-level,
.orgw-plot:focus-within .orgw-grow-time,
.orgw-plot:focus-within .orgw-progress,
.orgw-plot:focus-within .orgw-plot-level {
  opacity: 1;
  visibility: visible;
}

.orgw-plot.is-pixel-hover .orgw-plot-level,
.orgw-plot:focus-within .orgw-plot-level {
  pointer-events: auto;
}

/* Keep the ready-meat indicator compact and centered inside each pen. */
.orgw-pen-status {
  left: 50% !important;
  right: auto !important;
  top: 14% !important;
  width: clamp(48px, 13%, 86px) !important;
  height: auto !important;
  max-width: 86px !important;
  transform: translateX(-50%);
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 8px 12px rgba(60, 41, 15, 0.18));
  pointer-events: none;
}

.orgw-pen-status[hidden] {
  display: none !important;
}

/* Pen information is completely hidden until the visible pen artwork is hovered or focused. */
.orgw-pen-label {
  left: 18%;
  right: 18%;
  padding: 9px 12px;
  text-align: center;
  color: #2f2418 !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(5px);
  pointer-events: none;
  transition: opacity 0.16s ease, visibility 0.16s ease, transform 0.16s ease;
}

.orgw-pen-label strong,
.orgw-pen-label span {
  color: #5b391d !important;
}

.orgw-pen.is-pixel-hover .orgw-pen-label,
.orgw-pen:focus-visible .orgw-pen-label {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.orgw-pen-label span {
  max-height: 0;
  margin-top: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.16s ease, opacity 0.16s ease, margin-top 0.16s ease;
}

.orgw-pen.is-pixel-hover .orgw-pen-label span,
.orgw-pen:focus-visible .orgw-pen-label span {
  max-height: 3em;
  margin-top: 3px;
  opacity: 1;
}

@media (max-width: 1180px) {
  .orgw-plot-label {
    padding: 7px 10px;
    font-size: 0.74rem;
  }

  .orgw-plot-label small {
    font-size: 0.66rem;
  }
}

/* v0.8.6: optional rotating tips. The saved layout rectangle stays fixed;
   when tips are disabled only a compact information icon is painted inside it. */
[data-org-world] button.orgw-scene-note,
[data-org-world] button.orgw-scene-note:hover,
[data-org-world] button.orgw-scene-note:focus,
[data-org-world] button.orgw-scene-note:focus-visible,
[data-org-world] button.orgw-scene-note:active {
  margin: 0 !important;
  min-width: 0;
  min-height: 0;
  color: #51361b;
  font: inherit;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

[data-org-world] button.orgw-scene-note:hover,
[data-org-world] button.orgw-scene-note:focus-visible {
  background: rgba(255, 251, 240, 0.98);
  border-color: rgba(126, 83, 34, 0.38);
}

.orgw-tip-text {
  display: block;
  max-width: 100%;
  line-height: 1.35;
}

.orgw-tip-icon {
  display: none;
}

[data-org-world] button.orgw-scene-note.is-collapsed,
[data-org-world] button.orgw-scene-note.is-collapsed:hover,
[data-org-world] button.orgw-scene-note.is-collapsed:focus,
[data-org-world] button.orgw-scene-note.is-collapsed:focus-visible,
[data-org-world] button.orgw-scene-note.is-collapsed:active {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none;
}

.orgw-scene-note.is-collapsed .orgw-tip-text {
  display: none;
}

.orgw-scene-note.is-collapsed .orgw-tip-icon {
  display: grid;
  place-items: center;
  width: clamp(30px, 4vw, 42px);
  aspect-ratio: 1;
  border: 2px solid rgba(106, 71, 31, 0.42);
  border-radius: 50%;
  background: rgba(255, 248, 233, 0.96);
  color: #68451f;
  box-shadow: 0 8px 18px rgba(61, 43, 18, 0.18);
  font-family: Georgia, serif;
  font-size: clamp(18px, 2vw, 25px);
  font-style: italic;
  font-weight: 800;
  line-height: 1;
}

.orgw-game.is-layout-editor .orgw-scene-note {
  cursor: default;
}


/* v0.8.7: transparent pixels no longer behave like oversized rectangular buttons. */
.orgw-hotspot[data-alpha-hit]:hover {
  transform: none;
  filter: none;
}

.orgw-hotspot[data-alpha-hit].is-pixel-hover,
.orgw-hotspot[data-alpha-hit]:focus-visible {
  transform: translateY(-2px) scale(1.01);
  filter: drop-shadow(0 10px 20px rgba(31, 21, 6, 0.22));
}

.orgw-market-feedback {
  display: grid;
  gap: 4px;
  margin: 0 0 12px;
  padding: 13px 15px;
  border: 1px solid rgba(133, 91, 45, 0.18);
  border-radius: 16px;
  background: rgba(255, 252, 244, 0.96);
  color: #5b391d;
}

.orgw-market-feedback[hidden] {
  display: none !important;
}

.orgw-market-feedback.is-warning {
  border-color: rgba(164, 91, 28, 0.3);
  background: rgba(255, 239, 207, 0.98);
}

.orgw-market-feedback strong,
.orgw-market-feedback span {
  display: block;
}

.orgw-animal-row button.is-unavailable {
  background: #e7dcc8 !important;
  color: #725f45 !important;
  cursor: pointer;
}

/* v0.8.9: alpha trimming is a hit-test concern only. Never clip the visible
   house, pens, animals, status bubbles, labels or wood text. The transparent
   field button may still use a generated outline because it contains no art. */
.orgw-hotspot[data-alpha-hit] {
  clip-path: none !important;
  -webkit-clip-path: none !important;
}

.orgw-plot-main[data-alpha-clip] {
  /* JavaScript replaces the fallback with the field artwork's alpha outline. */
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

.orgw-tutorial-intro {
  display: grid;
  gap: 12px;
}

.orgw-tutorial-intro h2 {
  margin-bottom: 0;
  font-size: clamp(1.8rem, 4vw, 2.7rem);
}

.orgw-tutorial-kicker {
  width: fit-content;
  padding: 6px 11px;
  border-radius: 999px;
  background: rgba(84, 54, 21, 0.92);
  color: #fff8eb;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.orgw-tutorial-actions,
.orgw-tutorial-card {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.orgw-tutorial-actions {
  margin-top: 8px;
}

.orgw-tutorial-card {
  justify-content: space-between;
  margin: 14px 0 18px;
  padding: 14px 16px;
  border: 1px solid rgba(133, 91, 45, 0.18);
  border-radius: 18px;
  background: rgba(246, 235, 210, 0.72);
}

.orgw-tutorial-card > div {
  flex: 1 1 320px;
}

.orgw-tutorial-card strong,
.orgw-tutorial-card span,
.orgw-tutorial-objective strong,
.orgw-tutorial-objective span {
  display: block;
}

.orgw-tutorial-card span {
  margin-top: 4px;
  color: #6b4b29;
}

.orgw-tutorial-objective {
  display: grid;
  gap: 6px;
  margin-top: 16px;
  padding: 14px 16px;
  border-left: 5px solid #d99a39;
  border-radius: 14px;
  background: rgba(255, 245, 218, 0.94);
  color: #563719;
}

.orgw-tutorial-objective strong {
  font-size: 0.76rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.orgw-tutorial-objective span {
  font-weight: 800;
}

.is-tutorial-target {
  filter: drop-shadow(0 0 8px rgba(255, 224, 105, 0.96)) drop-shadow(0 0 18px rgba(217, 119, 6, 0.66)) !important;
  animation: orgwTutorialTargetPulse 1.45s ease-in-out infinite;
}

.orgw-plot.is-tutorial-target {
  z-index: 190 !important;
}

.orgw-utility-buttons button.is-tutorial-target {
  position: relative;
  z-index: 190;
}

@keyframes orgwTutorialTargetPulse {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-2px) scale(1.025); }
}

@media (prefers-reduced-motion: reduce) {
  .is-tutorial-target {
    animation: none;
  }
}

@media (max-width: 680px) {
  .orgw-tutorial-card {
    align-items: stretch;
  }

  .orgw-tutorial-card button,
  .orgw-tutorial-actions button {
    width: 100%;
  }
}


/* v0.9.0: world market cart and farmhouse recipes. */
.orgw-market-cart img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}

.orgw-market-cart-label {
  position: absolute;
  left: 50%;
  bottom: 2%;
  transform: translateX(-50%);
  max-width: 90%;
  padding: 6px 11px;
  border: 1px solid rgba(126, 83, 34, 0.24);
  border-radius: 999px;
  background: rgba(255, 248, 233, 0.94);
  color: #5a3a1d;
  box-shadow: 0 8px 18px rgba(61, 43, 18, 0.14);
  font-size: clamp(0.62rem, 1.1vw, 0.8rem);
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
}

.orgw-market-cart.is-stocked .orgw-market-cart-label::after {
  content: " · Stocked";
}

.orgw-recipe-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0 24px;
}

.orgw-recipe-card {
  display: grid;
  grid-template-columns: minmax(86px, 30%) 1fr;
  gap: 14px;
  align-items: center;
  padding: 15px;
  border: 1px solid rgba(133, 91, 45, 0.15);
  border-radius: 22px;
  background: rgba(255, 252, 244, 0.9);
  box-shadow: 0 12px 22px rgba(67, 45, 18, 0.08);
}

.orgw-recipe-card > img {
  width: 100%;
  height: 120px;
  object-fit: contain;
}

.orgw-recipe-copy {
  min-width: 0;
}

.orgw-recipe-copy strong,
.orgw-recipe-copy span,
.orgw-recipe-copy small {
  display: block;
}

.orgw-recipe-copy strong {
  color: #4d3318;
  font-size: 1.08rem;
}

.orgw-recipe-copy span {
  margin-top: 5px;
  color: #684c2c;
  font-weight: 800;
}

.orgw-recipe-copy small {
  margin-top: 5px;
  color: #7a6042;
  line-height: 1.35;
}

.orgw-recipe-card button {
  grid-column: 1 / -1;
  justify-self: stretch;
}

.orgw-market-empty {
  display: grid;
  gap: 4px;
  margin: 12px 0 16px;
  padding: 15px 17px;
  border: 1px dashed rgba(133, 91, 45, 0.32);
  border-radius: 18px;
  background: rgba(246, 235, 210, 0.56);
  color: #5b391d;
}

.orgw-market-empty strong,
.orgw-market-empty span {
  display: block;
}

@media (max-width: 760px) {
  .orgw-recipe-list {
    grid-template-columns: 1fr;
  }

  .orgw-recipe-card {
    grid-template-columns: 90px 1fr;
  }

  .orgw-recipe-card > img {
    height: 96px;
  }
}

/* v0.9.1: 21-task weekly board states and potion colour-sorting workshop. */
.orgw-task-board img {
  transition: transform 0.2s ease, filter 0.2s ease;
}

.orgw-task-board.is-complete img {
  filter: saturate(0.86) brightness(1.02);
}

.orgw-weekly-deck-note,
.orgw-daily-complete {
  display: grid;
  gap: 4px;
  margin: 14px 0;
  padding: 13px 15px;
  border: 1px solid rgba(126, 89, 43, 0.18);
  border-radius: 15px;
  background: rgba(255, 248, 231, 0.82);
  color: #5d4022;
}

.orgw-daily-complete {
  border-color: rgba(75, 137, 75, 0.32);
  background: rgba(232, 248, 221, 0.9);
}

.orgw-weekly-deck-note strong,
.orgw-weekly-deck-note span,
.orgw-daily-complete strong,
.orgw-daily-complete span {
  display: block;
}

.orgw-weekly-deck-note span,
.orgw-daily-complete span {
  font-size: 0.86rem;
  line-height: 1.4;
}

.orgw-potion-house-card,
.orgw-potion-recipe,
.orgw-potion-use {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin: 16px 0;
  padding: 14px;
  border: 1px solid rgba(126, 89, 43, 0.18);
  border-radius: 18px;
  background: rgba(255, 250, 239, 0.92);
  box-shadow: 0 10px 24px rgba(73, 49, 20, 0.08);
}

.orgw-potion-house-card > img {
  width: 84px;
  height: 64px;
  object-fit: contain;
}

.orgw-potion-house-card strong,
.orgw-potion-house-card span,
.orgw-potion-recipe strong,
.orgw-potion-recipe span,
.orgw-potion-recipe small,
.orgw-potion-use strong,
.orgw-potion-use span {
  display: block;
}

.orgw-potion-house-card span,
.orgw-potion-recipe span,
.orgw-potion-use span {
  margin-top: 3px;
  color: #6e5131;
  font-size: 0.84rem;
  line-height: 1.35;
}

.orgw-potion-recipe small {
  margin-top: 5px;
  color: #8a6a45;
  font-size: 0.76rem;
}

.orgw-potion-intro {
  display: grid;
  grid-template-columns: minmax(90px, 150px) 1fr;
  align-items: center;
  gap: 16px;
  margin: 8px 0 16px;
  padding: 14px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(239, 229, 255, 0.92), rgba(247, 250, 232, 0.92));
}

.orgw-potion-intro img {
  display: block;
  width: 100%;
  max-height: 110px;
  object-fit: contain;
}

.orgw-potion-intro p {
  margin: 5px 0 0;
}

.orgw-potion-difficulty {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.orgw-potion-difficulty button {
  white-space: nowrap;
}

.orgw-potion-puzzle {
  margin: 18px 0;
  padding: 16px;
  border: 1px solid rgba(91, 73, 131, 0.2);
  border-radius: 20px;
  background: linear-gradient(180deg, #f1edf8, #e7edf5);
}

.orgw-potion-puzzle.is-solved {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 14px;
  background: linear-gradient(180deg, #e9f7dc, #f7f3d8);
}

.orgw-potion-rule {
  display: grid;
  gap: 3px;
  color: #493c5e;
}

.orgw-potion-rule span {
  font-size: 0.82rem;
  line-height: 1.35;
}

.orgw-potion-bottles {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: center;
  gap: clamp(8px, 2vw, 16px);
  min-height: 190px;
  margin: 18px 0 12px;
}

[data-org-world] button.orgw-potion-bottle,
[data-org-world] button.orgw-potion-bottle:hover,
[data-org-world] button.orgw-potion-bottle:focus,
[data-org-world] button.orgw-potion-bottle:active {
  position: relative;
  width: clamp(46px, 8vw, 68px);
  height: clamp(142px, 22vw, 178px);
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 3px solid rgba(223, 239, 242, 0.96) !important;
  border-top: 0 !important;
  border-radius: 12px 12px 22px 22px;
  background: linear-gradient(90deg, rgba(255,255,255,0.2), rgba(255,255,255,0.52), rgba(255,255,255,0.14)) !important;
  box-shadow: inset 0 0 0 2px rgba(105, 128, 139, 0.24), 0 9px 18px rgba(61, 55, 87, 0.15) !important;
  cursor: pointer;
  transform-origin: 50% 90%;
}

[data-org-world] button.orgw-potion-bottle::before {
  content: '';
  position: absolute;
  z-index: 5;
  left: 23%;
  right: 23%;
  top: -15px;
  height: 22px;
  border: 3px solid rgba(223, 239, 242, 0.96);
  border-bottom: 0;
  border-radius: 7px 7px 0 0;
  background: rgba(236, 247, 248, 0.58);
  box-shadow: inset 0 0 0 2px rgba(105, 128, 139, 0.18);
}

[data-org-world] button.orgw-potion-bottle::after {
  content: '';
  position: absolute;
  z-index: 6;
  inset: 8% 18% 14% 48%;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
}

.orgw-potion-bottle i {
  position: absolute;
  z-index: 4;
  left: 7%;
  right: 7%;
  bottom: 4%;
  height: 8%;
  border-radius: 0 0 18px 18px;
  background: rgba(255,255,255,0.18);
  pointer-events: none;
}

.orgw-potion-layer {
  position: absolute;
  z-index: 2;
  left: 6%;
  right: 6%;
  bottom: var(--layer-bottom);
  height: calc(100% / 4 + 1px);
  background: var(--layer-color);
  box-shadow: inset 0 4px 0 rgba(255,255,255,0.16);
  pointer-events: none;
}

.orgw-potion-layer:first-child {
  border-radius: 0 0 17px 17px;
}

.orgw-potion-bottle.is-selected {
  transform: translateY(-12px) rotate(-2deg);
  filter: drop-shadow(0 10px 10px rgba(101, 73, 148, 0.28));
}

.orgw-potion-bottle.is-hint-source {
  animation: orgwPotionHintSource 0.8s ease-in-out infinite alternate;
}

.orgw-potion-bottle.is-hint-target {
  animation: orgwPotionHintTarget 0.8s ease-in-out infinite alternate;
}

@keyframes orgwPotionHintSource {
  from { transform: translateY(0); }
  to { transform: translateY(-10px) rotate(5deg); }
}

@keyframes orgwPotionHintTarget {
  from { box-shadow: inset 0 0 0 2px rgba(105,128,139,0.24), 0 9px 18px rgba(61,55,87,0.15) !important; }
  to { box-shadow: inset 0 0 0 3px rgba(109,177,113,0.72), 0 0 0 5px rgba(109,177,113,0.18), 0 9px 18px rgba(61,55,87,0.15) !important; }
}

.orgw-potion-puzzle-status {
  min-height: 1.4em;
  margin: 8px 0;
  color: #55466d;
  text-align: center;
  font-weight: 700;
}

.orgw-potion-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.orgw-potion-use {
  grid-template-columns: minmax(0, 1fr) auto;
}

@media (max-width: 720px) {
  .orgw-potion-house-card,
  .orgw-potion-recipe,
  .orgw-potion-use,
  .orgw-potion-puzzle.is-solved {
    grid-template-columns: 1fr;
  }

  .orgw-potion-house-card > img {
    width: 100%;
    height: 70px;
  }

  .orgw-potion-intro {
    grid-template-columns: 1fr;
  }

  .orgw-potion-intro img {
    max-height: 86px;
  }

  .orgw-potion-difficulty {
    justify-content: flex-start;
  }
}

/* v0.9.2: bundled event sound effects are handled in game.js; no visual layout changes. */

/* v0.9.3 potion completion fireworks and explicit brewed-potion result. */
.orgw-fireworks {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}
.orgw-modal-card { z-index: 3; }
.orgw-firework-spark {
  position: absolute;
  left: var(--spark-x);
  top: var(--spark-y);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  opacity: 0;
  background: hsl(var(--spark-hue) 88% 58%);
  box-shadow: 0 0 12px hsl(var(--spark-hue) 95% 68%);
}
.orgw-fireworks.is-active .orgw-firework-spark {
  animation: orgwPotionFirework 1.15s cubic-bezier(.12,.7,.18,1) var(--spark-delay) both;
}
@keyframes orgwPotionFirework {
  0% { opacity: 0; transform: translate(-50%,-50%) scale(.15); }
  12% { opacity: 1; transform: translate(-50%,-50%) scale(1.15); }
  100% { opacity: 0; transform: translate(calc(-50% + var(--spark-dx)),calc(-50% + var(--spark-dy))) scale(.25); }
}
.orgw-potion-win {
  display: grid;
  justify-items: center;
  gap: 5px;
  margin: 16px 0;
  padding: 18px;
  border: 2px solid rgba(111, 157, 65, .38);
  border-radius: 20px;
  background: linear-gradient(180deg,rgba(239,255,222,.98),rgba(218,244,194,.96));
  text-align: center;
  box-shadow: 0 16px 32px rgba(69, 111, 38, .14);
}
.orgw-potion-win > span {
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #4b772f;
}
.orgw-potion-win > strong {
  font-family: Georgia,serif;
  font-size: clamp(1.55rem,4vw,2.25rem);
  color: #315b27;
}
.orgw-potion-win p { margin: 2px 0 0; }
@media (prefers-reduced-motion: reduce) {
  .orgw-fireworks.is-active .orgw-firework-spark { animation-duration: .01ms; }
}


/* v0.9.4: Wandering Gambler Org X & O minigame. */
/* v0.9.8: give the artwork wrapper a definite size. A percentage-sized stage
   inside a shrink-to-fit grid child could collapse to 0×0 and leave only the
   dark modal backdrop visible in some browsers and WordPress themes. */
.orgw-modal.is-gambler-game {
  padding: 6px;
}
.orgw-modal.is-gambler-game .orgw-modal-card {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: hidden;
  display: grid;
  place-items: center;
}
.orgw-modal.is-gambler-game .orgw-modal-card > .orgw-modal-close { display: none; }
.orgw-modal.is-gambler-game [data-modal-content] {
  width: 100%;
  height: 100%;
  min-width: 0;
  display: grid;
  place-items: center;
}
.orgw-gambler-stage {
  position: relative;
  width: min(1180px, 100%, calc((100vh - 20px) * 1.48883375));
  max-width: 100%;
  aspect-ratio: 1200 / 806;
  margin: auto;
  user-select: none;
}
.orgw-gambler-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.orgw-tic-board {
  position: absolute;
  left: 28.9%;
  top: 25.3%;
  width: 26.1%;
  height: 39.1%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
}
[data-org-world] button.orgw-tic-cell,
[data-org-world] button.orgw-tic-cell:hover,
[data-org-world] button.orgw-tic-cell:focus,
[data-org-world] button.orgw-tic-cell:active {
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
  color: transparent;
}
[data-org-world] button.orgw-tic-cell:not(:disabled):hover {
  background: rgba(111, 157, 65, .14);
}
[data-org-world] button.orgw-tic-cell:focus-visible {
  outline: 4px solid rgba(255, 238, 145, .92);
  outline-offset: -5px;
}
.orgw-tic-cell span {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-family: Impact, "Arial Black", sans-serif;
  font-size: clamp(2.4rem, 8vw, 6.8rem);
  line-height: 1;
  text-shadow: 0 5px 0 rgba(54, 28, 15, .35);
  transform: rotate(-4deg);
}
.orgw-tic-cell.is-x span { color: #b94d32; -webkit-text-stroke: 3px #6e2f20; }
.orgw-tic-cell.is-o span { color: #447b9e; -webkit-text-stroke: 3px #244a65; transform: rotate(4deg); }
.orgw-gambler-difficulties {
  position: absolute;
  left: 25%;
  top: 68.35%;
  width: 48.5%;
  height: 12.25%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
[data-org-world] button.orgw-gambler-difficulty,
[data-org-world] button.orgw-gambler-difficulty:hover,
[data-org-world] button.orgw-gambler-difficulty:focus,
[data-org-world] button.orgw-gambler-difficulty:active {
  min-width: 0;
  padding: 0;
  border: 3px solid transparent;
  border-radius: 14px;
  background: transparent;
  box-shadow: none;
}
[data-org-world] button.orgw-gambler-difficulty:not(:disabled):hover,
[data-org-world] button.orgw-gambler-difficulty.is-selected {
  border-color: rgba(255, 238, 142, .9);
  background: rgba(102, 142, 51, .16);
  box-shadow: inset 0 0 0 3px rgba(77, 50, 21, .45), 0 0 18px rgba(255, 221, 101, .55);
}
.orgw-gambler-art-button {
  position: absolute;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
}
.orgw-gambler-art-button.is-play { left: 26.7%; top: 84.25%; width: 15.6%; height: 7.8%; }
.orgw-gambler-art-button.is-rules { left: 44.7%; top: 84.25%; width: 14.7%; height: 7.8%; }
.orgw-gambler-art-button.is-close { left: 61.65%; top: 84.25%; width: 14.2%; height: 7.8%; }
.orgw-gambler-art-button.is-close-top { left: 82.15%; top: 9.75%; width: 7.15%; height: 9.7%; }
.orgw-gambler-art-button:not(:disabled):hover,
.orgw-gambler-art-button:focus-visible {
  outline: 4px solid rgba(255, 238, 142, .9);
  outline-offset: -5px;
  border-radius: 16px;
}
.orgw-gambler-status {
  position: absolute;
  left: 59.4%;
  top: 36.5%;
  width: 20.5%;
  min-height: 48px;
  display: grid;
  place-items: center;
  padding: 8px 12px;
  border: 2px solid rgba(89, 55, 23, .45);
  border-radius: 14px;
  background: rgba(255, 244, 203, .94);
  color: #4a2d18;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 8px 16px rgba(41, 24, 11, .18);
}
.orgw-gambler-status.is-win { color: #315f24; }
.orgw-gambler-status.is-loss { color: #8a3327; }
.orgw-gambler-rules {
  position: absolute;
  left: 31%;
  top: 27%;
  width: 43%;
  padding: 18px 20px;
  border: 4px solid #6b421f;
  border-radius: 18px;
  background: #f3d79f;
  color: #4a2d18;
  box-shadow: 0 16px 45px rgba(33, 19, 8, .45);
  z-index: 5;
}
.orgw-gambler-rules strong {
  display: block;
  margin-bottom: 8px;
  font-family: Georgia, serif;
  font-size: 1.35rem;
}
.orgw-gambler-rules p { margin: 0; line-height: 1.45; }
.orgw-visitor-panel[data-speaker="gambler"] img {
  object-fit: contain;
  object-position: center bottom;
}
@media (max-width: 720px) {
  .orgw-gambler-status {
    left: 57.5%;
    top: 53.2%;
    width: 24%;
    min-height: 34px;
    padding: 5px 7px;
    font-size: clamp(.58rem, 2.5vw, .8rem);
  }
  .orgw-gambler-rules {
    left: 20%;
    top: 23%;
    width: 60%;
    padding: 12px;
    font-size: .78rem;
  }
}

/* v0.9.6: rolling three-mark rules and artwork-aligned controls. */
.orgw-tic-cell.is-oldest span {
  opacity: .72;
  filter: drop-shadow(0 0 7px rgba(255, 226, 118, .9));
  animation: orgw-oldest-mark-pulse 1.35s ease-in-out infinite alternate;
}
@keyframes orgw-oldest-mark-pulse {
  from { opacity: .62; transform: scale(.94) rotate(-4deg); }
  to { opacity: .9; transform: scale(1) rotate(-4deg); }
}
.orgw-tic-cell.is-o.is-oldest span {
  animation-name: orgw-oldest-o-pulse;
}
@keyframes orgw-oldest-o-pulse {
  from { opacity: .62; transform: scale(.94) rotate(4deg); }
  to { opacity: .9; transform: scale(1) rotate(4deg); }
}
.orgw-gambler-art-button,
.orgw-gambler-difficulty {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.orgw-gambler-art-button:disabled {
  cursor: default;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .orgw-tic-cell.is-oldest span { animation: none; opacity: .76; }
}

/* v0.9.5: each Gambler visit includes all three difficulty levels. */
[data-org-world] button.orgw-gambler-difficulty {
  position: relative;
}
[data-org-world] button.orgw-gambler-difficulty > span {
  position: absolute;
  right: 8%;
  top: 5%;
  display: grid;
  place-items: center;
  width: clamp(22px, 3vw, 36px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: #5f8c35;
  color: #fff4bf;
  font-size: clamp(.8rem, 2vw, 1.4rem);
  font-weight: 900;
  text-shadow: 0 2px 0 rgba(47, 58, 21, .45);
  box-shadow: 0 3px 0 #3d5f23, 0 0 0 3px rgba(255, 239, 158, .72);
  opacity: 0;
  transform: scale(.65);
}
[data-org-world] button.orgw-gambler-difficulty.is-complete > span {
  opacity: 1;
  transform: scale(1);
}
[data-org-world] button.orgw-gambler-difficulty.is-complete {
  background: rgba(91, 132, 50, .18);
  border-color: rgba(208, 235, 139, .82);
}
.orgw-gambler-status {
  align-content: center;
  gap: 5px;
}
.orgw-gambler-status > span:last-child {
  display: block;
}
.orgw-gambler-reward {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  align-items: center;
  justify-content: center;
  column-gap: 7px;
  color: #315f24;
}
.orgw-gambler-reward img {
  grid-row: 1 / span 2;
  width: clamp(28px, 4vw, 52px);
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 4px 4px rgba(52, 69, 23, .25));
}
.orgw-gambler-reward b {
  align-self: end;
  font-size: clamp(1rem, 2.4vw, 1.55rem);
  line-height: 1;
}
.orgw-gambler-reward small {
  align-self: start;
  font-size: clamp(.58rem, 1.2vw, .78rem);
  line-height: 1.05;
}
@media (max-width: 720px) {
  .orgw-gambler-reward img { width: 24px; }
  .orgw-gambler-status { gap: 2px; }
}

/* v0.9.9: Harvest Pass, character needs and monthly progression. */
.orgw-utility-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: minmax(0, 1fr);
  gap: 5px;
  align-items: stretch;
}
.orgw-utility-buttons button {
  min-width: 0;
  min-height: 0;
  padding: 5px 8px;
  line-height: 1.05;
  font-size: clamp(.58rem, .8vw, .78rem);
  white-space: normal;
}
.orgw-needs-button {
  display: grid;
  place-content: center;
  gap: 1px;
}
.orgw-needs-button small {
  display: block;
  font-size: .72em;
  font-weight: 800;
  opacity: .78;
}
.orgw-needs-button.is-low {
  box-shadow: 0 0 0 3px rgba(188, 68, 39, .34), 0 8px 16px rgba(66, 39, 14, .16);
  animation: orgw-needs-alert 1.4s ease-in-out infinite alternate;
}
@keyframes orgw-needs-alert { from { filter: brightness(1); } to { filter: brightness(1.12) saturate(1.15); } }
.orgw-choice-card.is-locked,
.orgw-recipe-card.is-locked,
.orgw-animal-row.is-locked { opacity: .62; filter: grayscale(.25); }
.orgw-recipe-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.orgw-recipe-actions button { grid-column: auto; }
.orgw-inventory-row { grid-template-columns: 76px 1fr auto; }
.orgw-special-row { grid-template-columns: 76px 1fr auto; }
.orgw-special-icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: linear-gradient(145deg, #fff8df, #ead6a5);
  font-size: 2rem;
  box-shadow: inset 0 0 0 1px rgba(105, 69, 27, .16);
}
.orgw-needs-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0;
}
.orgw-needs-grid section {
  display: grid;
  gap: 7px;
  padding: 16px;
  border-radius: 20px;
  background: rgba(255, 252, 244, .9);
  border: 1px solid rgba(133, 91, 45, .16);
}
.orgw-needs-grid span { color: #76593a; font-size: .88rem; }
.orgw-needs-meter,
.orgw-season-progress > div {
  height: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(82, 55, 28, .16);
  box-shadow: inset 0 2px 5px rgba(61, 39, 14, .18);
}
.orgw-needs-meter i,
.orgw-season-progress > div i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #cc7b2f, #e6bd4e);
  transition: width .3s ease;
}
.orgw-needs-meter.is-thirst i { background: linear-gradient(90deg, #3c83b8, #72c4d8); }
.orgw-needs-bonuses {
  margin: 0 0 18px;
  padding: 14px 18px 14px 36px;
  border-radius: 18px;
  background: rgba(229, 244, 211, .76);
  color: #3e5e2d;
}
.orgw-season-header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: start;
  padding-right: 38px;
}
.orgw-season-header h2 { margin-bottom: 2px; }
.orgw-season-header p { margin: 0; }
.orgw-season-progress {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px 15px;
  margin: 16px 0;
  padding: 15px 17px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f4e2b5, #fff7df);
  border: 1px solid rgba(140, 93, 35, .2);
}
.orgw-season-progress > div { grid-column: 1 / -1; }
.orgw-premium-banner,
.orgw-overflow-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin: 16px 0;
  padding: 15px 17px;
  border-radius: 20px;
  background: linear-gradient(135deg, #6e4917, #bb8226);
  color: #fff1bd;
  box-shadow: 0 12px 25px rgba(69, 39, 10, .2);
}
.orgw-premium-banner strong,
.orgw-premium-banner span,
.orgw-overflow-panel strong,
.orgw-overflow-panel span { display: block; }
.orgw-premium-banner button,
.orgw-overflow-panel button { flex: 0 0 auto; }
.orgw-season-track-label {
  display: inline-flex;
  margin: 15px 0 7px;
  padding: 5px 12px;
  border-radius: 999px;
  background: #284c68;
  color: #eff8ff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.orgw-season-track-label.is-premium { background: #9a6b1d; color: #fff1b0; }
.orgw-season-track {
  display: grid;
  grid-template-columns: repeat(30, minmax(118px, 1fr));
  gap: 8px;
  overflow-x: auto;
  padding: 5px 2px 12px;
  scroll-snap-type: x proximity;
}
.orgw-season-reward {
  position: relative;
  min-height: 144px;
  display: grid;
  grid-template-rows: auto 1fr auto auto;
  place-items: center;
  gap: 5px;
  padding: 12px 9px 10px;
  border-radius: 16px;
  text-align: center;
  background: linear-gradient(180deg, #f6e9c8, #ddc38f);
  border: 2px solid rgba(111, 73, 28, .2);
  scroll-snap-align: start;
}
.orgw-season-reward > b {
  position: absolute;
  top: 5px;
  left: 8px;
  color: #6b4b27;
}
.orgw-season-reward > strong { font-size: .78rem; line-height: 1.15; }
.orgw-season-reward > i { font-size: .72rem; color: #70563a; }
.orgw-season-reward.is-locked { filter: grayscale(.65); opacity: .62; }
.orgw-season-reward.is-unlocked { box-shadow: 0 0 0 3px #f3c95c, 0 8px 18px rgba(105, 69, 27, .2); }
.orgw-season-reward.is-claimed { background: linear-gradient(180deg, #dceacb, #bfd4a5); opacity: .8; }
.orgw-reward-symbol { font-size: 2.25rem; margin-top: 8px; }
.orgw-season-reward button { padding: 6px 10px; font-size: .75rem; }
.orgw-overflow-panel { background: linear-gradient(135deg, #315f45, #5a8d56); }
.orgw-overflow-choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.orgw-overflow-choice {
  min-height: 150px;
  display: grid;
  place-items: center;
  gap: 8px;
  padding: 18px;
  border: 2px solid rgba(127, 83, 29, .18);
  border-radius: 22px;
  background: rgba(255, 249, 230, .92);
}
.orgw-overflow-choice span { font-size: 3rem; }
.orgw-weekly-contract {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  gap: 8px;
  align-items: center;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255, 252, 244, .9);
  border: 1px solid rgba(133, 91, 45, .14);
}
.orgw-weekly-contract span { padding: 8px; border-radius: 12px; background: rgba(221, 204, 163, .35); text-align: center; }
.orgw-season-missions { display: grid; gap: 9px; }
.orgw-season-mission {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  border-radius: 17px;
  background: rgba(255, 252, 244, .9);
  border: 1px solid rgba(133, 91, 45, .14);
}
.orgw-season-mission strong,
.orgw-season-mission span,
.orgw-season-mission small { display: block; }
.orgw-season-mission.is-complete { background: rgba(226, 245, 211, .94); }
.orgw-task-modal-row.is-premium {
  border-color: rgba(207, 149, 43, .55);
  background: linear-gradient(135deg, rgba(255, 247, 218, .95), rgba(242, 221, 170, .92));
}
.orgw-premium-task-title { color: #a26b16 !important; }
.orgw-premium-task-offer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin: 16px 0;
  padding: 15px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f4dfaa, #fff6d5);
  border: 1px solid #d5a743;
}
.orgw-premium-task-offer strong,
.orgw-premium-task-offer span { display: block; }
@media (max-width: 720px) {
  .orgw-needs-grid,
  .orgw-overflow-choices { grid-template-columns: 1fr; }
  .orgw-season-header,
  .orgw-premium-banner,
  .orgw-overflow-panel,
  .orgw-premium-task-offer { align-items: stretch; flex-direction: column; }
  .orgw-weekly-contract { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .orgw-inventory-row,
  .orgw-special-row { grid-template-columns: 58px 1fr; }
  .orgw-inventory-row > button,
  .orgw-special-row > button { grid-column: 1 / -1; }
  .orgw-special-icon { width: 52px; height: 52px; }
}
@media (prefers-reduced-motion: reduce) {
  .orgw-needs-button.is-low { animation: none; }
}
.orgw-game:not(.is-layout-editor) .orgw-utility-buttons {
  height: auto !important;
  min-height: 66px;
}


/* v0.10.1: editable drinking well. Only the visible artwork is clickable. */
.orgw-well img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}

.orgw-well-label {
  position: absolute;
  left: 50%;
  bottom: -1%;
  transform: translateX(-50%) translateY(4px);
  max-width: 92%;
  padding: 5px 9px;
  border: 1px solid rgba(126, 83, 34, 0.24);
  border-radius: 999px;
  background: rgba(255, 248, 233, 0.96);
  color: #5a3a1d;
  box-shadow: 0 7px 16px rgba(61, 43, 18, 0.14);
  font-size: clamp(0.56rem, 0.9vw, 0.76rem);
  font-weight: 900;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.orgw-well.is-pixel-hover .orgw-well-label,
.orgw-well:focus-visible .orgw-well-label,
.orgw-game.is-layout-editor .orgw-well-label {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* v0.10.2: frontend polish pass for info icon, labels, Food Storage, Harvest Pass actions and multi-animal pens. */
.orgw-market-row button,
.orgw-inventory-row button,
.orgw-recipe-card button,
.orgw-animal-row button,
.orgw-task-modal-row button,
.orgw-season-art-actions button,
.orgw-premium-task-offer button,
.orgw-primary-action,
.orgw-secondary-action,
[data-org-world] button[data-buy-season-premium] {
  border: 0;
  cursor: pointer;
  border-radius: 15px;
  font-weight: 900;
  font-size: 0.92rem;
  padding: 12px 16px;
  background: linear-gradient(180deg, #f4d38a, #dcae59);
  color: #51361b !important;
  box-shadow: 0 10px 20px rgba(104, 70, 24, 0.16);
  transition: transform 0.14s ease, box-shadow 0.14s ease, filter 0.14s ease;
}

.orgw-market-row button:hover,
.orgw-inventory-row button:hover,
.orgw-recipe-card button:hover,
.orgw-animal-row button:hover,
.orgw-task-modal-row button:hover,
.orgw-season-art-actions button:hover,
.orgw-premium-task-offer button:hover,
.orgw-primary-action:hover,
.orgw-secondary-action:hover,
[data-org-world] button[data-buy-season-premium]:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(104, 70, 24, 0.2);
  filter: brightness(1.02);
}

.orgw-market-row button[disabled],
.orgw-inventory-row button[disabled],
.orgw-recipe-card button[disabled],
.orgw-animal-row button[disabled],
.orgw-task-modal-row button[disabled],
.orgw-season-art-actions button[disabled],
.orgw-primary-action[disabled],
.orgw-secondary-action[disabled] {
  opacity: 0.55;
  cursor: default;
  box-shadow: none;
  transform: none;
}

.orgw-market-cart-label,
.orgw-wood-label,
.orgw-well-label {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
  font-size: clamp(0.64rem, 0.95vw, 0.8rem);
  font-weight: 900;
  letter-spacing: 0.09em;
  line-height: 1.1;
  text-transform: uppercase;
}

.orgw-wood-label {
  max-width: 170%;
}

.orgw-market-cart-label {
  white-space: nowrap;
}

.orgw-well-label {
  bottom: -3%;
  min-width: 128px;
  white-space: nowrap;
}

.orgw-pen-label {
  left: 50%;
  right: auto;
  bottom: 6%;
  width: min(76%, 250px);
  transform: translateX(-50%) translateY(5px);
  padding: 9px 13px;
  border-radius: 19px;
}

.orgw-pen.is-pixel-hover .orgw-pen-label,
.orgw-pen:focus-visible .orgw-pen-label {
  transform: translateX(-50%) translateY(0);
}

.orgw-pen-label strong {
  font-size: clamp(0.8rem, 1.1vw, 0.96rem);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.orgw-pen-label span {
  font-size: clamp(0.63rem, 0.9vw, 0.78rem);
  line-height: 1.2;
}

[data-org-world] button.orgw-scene-note,
[data-org-world] button.orgw-scene-note:hover,
[data-org-world] button.orgw-scene-note:focus,
[data-org-world] button.orgw-scene-note:focus-visible,
[data-org-world] button.orgw-scene-note:active {
  padding: 10px 15px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(126, 83, 34, 0.2) !important;
  background: linear-gradient(180deg, rgba(255,250,240,0.98), rgba(244,230,204,0.97)) !important;
  box-shadow: 0 12px 24px rgba(61, 43, 18, 0.14), inset 0 1px 0 rgba(255,255,255,0.7) !important;
}

.orgw-tip-text {
  color: #5e3f1d;
  font-size: clamp(0.74rem, 1vw, 0.86rem);
  font-weight: 800;
}

.orgw-scene-note.is-collapsed .orgw-tip-icon {
  width: clamp(34px, 4.3vw, 46px);
  border-color: rgba(133, 91, 45, 0.28);
  background: linear-gradient(180deg, rgba(255,251,242,0.98), rgba(243,228,198,0.98));
  color: #6a4520;
  box-shadow: 0 10px 20px rgba(61, 43, 18, 0.16), inset 0 1px 0 rgba(255,255,255,0.72);
}

.orgw-storage-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  margin-bottom: 18px;
}

.orgw-storage-summary {
  min-width: 210px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(133, 91, 45, 0.16);
  background: linear-gradient(180deg, rgba(255,251,243,0.96), rgba(244,231,203,0.94));
  box-shadow: 0 12px 24px rgba(67, 45, 18, 0.08);
}

.orgw-storage-summary strong,
.orgw-storage-summary span,
.orgw-pen-capacity-note {
  display: block;
}

.orgw-storage-summary strong {
  color: #51361b;
  font-size: 1rem;
}

.orgw-storage-summary span,
.orgw-pen-capacity-note {
  margin-top: 4px;
  color: #6e5131;
  font-size: 0.84rem;
  line-height: 1.35;
}

.orgw-storage-list {
  gap: 18px;
}

.orgw-storage-section h3 {
  margin-bottom: 10px;
}

.orgw-storage-group {
  display: grid;
  gap: 12px;
}

.orgw-storage-empty {
  margin: 0;
  padding: 16px 18px;
  border-radius: 18px;
  border: 1px dashed rgba(133, 91, 45, 0.28);
  background: rgba(255, 250, 239, 0.92);
}

.orgw-inventory-row {
  grid-template-columns: 76px minmax(0, 1fr) auto;
  padding: 16px 18px;
}

.orgw-inventory-row strong {
  color: #4d3318;
  font-size: 1.04rem;
}

.orgw-inventory-row span {
  margin-top: 4px;
  color: #6e5131;
  line-height: 1.35;
}

.orgw-special-row .orgw-special-icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  background: linear-gradient(180deg, #fff6e8, #f0dec2);
  color: #7a511f;
  font-size: 1.9rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

.orgw-animal-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.orgw-animal-row > span {
  color: #6e5131;
  line-height: 1.35;
}

.orgw-modal.is-season-pass .orgw-modal-card {
  background: linear-gradient(180deg, #f8edcb, #e6c88a);
}

.orgw-season-art-toolbar {
  grid-template-columns: minmax(180px, auto) minmax(180px, 1fr) auto;
  gap: 10px 16px;
  padding: 12px 16px;
  border: 1px solid rgba(255, 217, 135, 0.14);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(74,50,20,0.96), rgba(53,35,16,0.96));
  box-shadow: 0 14px 28px rgba(32, 20, 8, 0.18);
}

.orgw-season-art-toolbar small {
  color: #f0dfb0;
}

.orgw-season-art-actions {
  align-items: center;
}

.orgw-season-art-actions button,
[data-org-world] button[data-buy-season-premium] {
  min-height: 44px;
  white-space: nowrap;
}

.orgw-season-premium-active {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(244, 207, 100, 0.45);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(182,132,39,0.34), rgba(117,78,16,0.3));
  color: #ffe9a2 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

@media (max-width: 900px) {
  .orgw-storage-header,
  .orgw-season-art-toolbar {
    grid-template-columns: 1fr;
  }

  .orgw-season-art-actions {
    grid-column: auto;
    grid-row: auto;
    justify-content: flex-start;
  }

  .orgw-storage-summary {
    min-width: 0;
  }
}

/* v0.10.3: visible field upgrade entry point and detailed requirement panel. */
[data-org-world] button.orgw-plot-level,
[data-org-world] button.orgw-plot-level:hover,
[data-org-world] button.orgw-plot-level:focus,
[data-org-world] button.orgw-plot-level:focus-visible,
[data-org-world] button.orgw-plot-level:active {
  right: 3%;
  bottom: 1%;
  min-width: 92px;
  min-height: 42px;
  display: grid;
  place-content: center;
  gap: 1px;
  padding: 6px 11px !important;
  border: 1px solid rgba(112, 72, 29, 0.3) !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, rgba(255,248,226,0.98), rgba(226,192,128,0.98)) !important;
  color: #51361b !important;
  box-shadow: 0 8px 18px rgba(62, 41, 16, 0.18), inset 0 1px 0 rgba(255,255,255,0.7) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  clip-path: none !important;
  z-index: 9;
}

[data-org-world] button.orgw-plot-level:hover,
[data-org-world] button.orgw-plot-level:focus-visible {
  transform: translateY(-1px) !important;
  box-shadow: 0 11px 21px rgba(62, 41, 16, 0.23), inset 0 1px 0 rgba(255,255,255,0.75) !important;
}

[data-org-world] button.orgw-plot-level.is-ready {
  border-color: rgba(77, 137, 59, 0.55) !important;
  background: linear-gradient(180deg, rgba(235,250,213,0.99), rgba(174,210,113,0.99)) !important;
  box-shadow: 0 0 0 3px rgba(134, 196, 83, 0.15), 0 9px 20px rgba(52, 92, 34, 0.18) !important;
  animation: orgw-upgrade-ready-pulse 2.2s ease-in-out infinite;
}

.orgw-plot-level span,
.orgw-plot-level small {
  display: block;
  line-height: 1.05;
  white-space: nowrap;
}

.orgw-plot-level span {
  font-size: clamp(0.66rem, 0.9vw, 0.78rem);
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.orgw-plot-level small {
  margin-top: 2px;
  color: #75522d;
  font-size: clamp(0.58rem, 0.75vw, 0.67rem);
  font-weight: 800;
}

@keyframes orgw-upgrade-ready-pulse {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.07); }
}

.orgw-upgrade-panel {
  display: grid;
  gap: 16px;
}

.orgw-upgrade-panel > header {
  padding-right: 42px;
}

.orgw-upgrade-panel h2 {
  margin-bottom: 5px;
}

.orgw-upgrade-panel header p {
  margin: 0;
  font-weight: 750;
}

.orgw-upgrade-kicker {
  display: inline-flex;
  margin-bottom: 6px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(133, 91, 45, 0.11);
  color: #745027;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.orgw-upgrade-effect,
.orgw-upgrade-complete {
  display: grid;
  gap: 4px;
  padding: 15px 17px;
  border: 1px solid rgba(133, 91, 45, 0.17);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,250,237,0.98), rgba(239,226,196,0.96));
  color: #55391c;
  box-shadow: 0 10px 22px rgba(67, 45, 18, 0.07);
}

.orgw-upgrade-effect strong,
.orgw-upgrade-effect span,
.orgw-upgrade-complete strong,
.orgw-upgrade-complete span {
  display: block;
}

.orgw-upgrade-effect span,
.orgw-upgrade-complete span {
  color: #6e5131;
  line-height: 1.4;
}

.orgw-upgrade-complete {
  border-color: rgba(76, 137, 64, 0.3);
  background: linear-gradient(135deg, rgba(235,249,218,0.98), rgba(214,235,183,0.96));
}

.orgw-upgrade-requirements-wrap {
  display: grid;
  gap: 8px;
}

.orgw-upgrade-requirements-wrap h3 {
  margin: 0;
}

.orgw-upgrade-requirements {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.orgw-upgrade-requirements li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 11px 13px;
  border: 1px solid;
  border-radius: 15px;
}

.orgw-upgrade-requirements li > span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-weight: 950;
}

.orgw-upgrade-requirements li strong,
.orgw-upgrade-requirements li small {
  display: block;
}

.orgw-upgrade-requirements li small {
  margin-top: 2px;
  font-weight: 850;
}

.orgw-upgrade-requirements li.is-ready {
  border-color: rgba(69, 137, 65, 0.32);
  background: rgba(232, 247, 218, 0.92);
  color: #315f2e;
}

.orgw-upgrade-requirements li.is-ready > span {
  background: #5c9f4c;
  color: white;
}

.orgw-upgrade-requirements li.is-missing {
  border-color: rgba(172, 91, 53, 0.32);
  background: rgba(252, 232, 215, 0.94);
  color: #844528;
}

.orgw-upgrade-requirements li.is-missing > span {
  background: #b55c36;
  color: white;
}

.orgw-upgrade-confirm {
  width: 100%;
  min-height: 50px;
}

.orgw-upgrade-confirm.is-blocked {
  opacity: 0.68;
  filter: grayscale(0.35);
}

.orgw-upgrade-ready-note,
.orgw-upgrade-missing-note {
  margin: -7px 0 0 !important;
  text-align: center;
  font-size: 0.84rem;
  font-weight: 800;
}

.orgw-upgrade-ready-note { color: #477338 !important; }
.orgw-upgrade-missing-note { color: #8b5537 !important; }

@media (max-width: 680px) {
  .orgw-upgrade-requirements {
    grid-template-columns: 1fr;
  }

  [data-org-world] button.orgw-plot-level,
  [data-org-world] button.orgw-plot-level:hover,
  [data-org-world] button.orgw-plot-level:focus-visible {
    min-width: 78px;
    min-height: 38px;
    padding: 5px 8px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-org-world] button.orgw-plot-level.is-ready { animation: none; }
}

/* v0.10.4: move field upgrades into the field modal and polish the upgrade presentation. */
.orgw-field-panel {
  display: grid;
  gap: 20px;
}

.orgw-field-panel-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}

.orgw-field-panel-kicker {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(214, 191, 147, 0.45);
  color: #7a5626;
  font-size: 0.78rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.orgw-field-panel-header h2 {
  margin: 0 0 8px;
}

.orgw-field-panel-header p {
  margin: 0;
  color: #6f5131;
  line-height: 1.45;
}

.orgw-field-panel-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.orgw-field-panel-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 14px;
  border: 1px solid rgba(131, 90, 43, 0.16);
  background: linear-gradient(180deg, rgba(255,251,243,0.96), rgba(244,231,204,0.95));
  color: #5e3e1a;
  font-weight: 800;
  font-size: 0.88rem;
  box-shadow: 0 8px 18px rgba(68, 44, 16, 0.08);
}

.orgw-field-upgrade-teaser {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 18px 20px;
  border-radius: 24px;
  border: 1px solid rgba(187, 153, 87, 0.3);
  background: linear-gradient(180deg, rgba(255,248,232,0.98), rgba(246,231,197,0.96));
  box-shadow: 0 14px 30px rgba(72, 48, 17, 0.1);
}

.orgw-field-upgrade-teaser.is-ready {
  border-color: rgba(111, 166, 82, 0.45);
  box-shadow: 0 14px 30px rgba(72, 48, 17, 0.1), 0 0 0 3px rgba(148, 204, 116, 0.18);
}

.orgw-field-upgrade-teaser strong,
.orgw-field-upgrade-teaser small,
.orgw-field-upgrade-teaser em,
.orgw-field-upgrade-kicker {
  display: block;
}

.orgw-field-upgrade-kicker {
  color: #8a6334;
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.orgw-field-upgrade-teaser strong {
  color: #4f3316;
  font-size: 1.15rem;
}

.orgw-field-upgrade-teaser small {
  margin-top: 5px;
  color: #7a5b36;
  font-size: 0.86rem;
}

.orgw-field-upgrade-teaser em {
  margin-top: 8px;
  color: #5c7b38;
  font-style: normal;
  line-height: 1.4;
  font-weight: 700;
}

.orgw-field-panel-section {
  padding: 18px 20px;
  border-radius: 24px;
  border: 1px solid rgba(131, 90, 43, 0.12);
  background: rgba(255, 251, 244, 0.9);
}

.orgw-field-panel-section h3 {
  margin: 0 0 6px;
  color: #563818;
}

.orgw-field-panel-section > p {
  margin: 0 0 14px;
  color: #765737;
}

.orgw-field-status-card {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}

.orgw-field-status-card img {
  width: 100%;
  max-width: 120px;
  height: auto;
  object-fit: contain;
}

.orgw-field-status-card strong,
.orgw-field-status-card span,
.orgw-field-status-card small {
  display: block;
}

.orgw-field-status-card strong {
  color: #4c3217;
  font-size: 1.06rem;
  margin-bottom: 6px;
}

.orgw-field-status-card span,
.orgw-field-status-card small {
  color: #725435;
  line-height: 1.4;
}

.orgw-field-status-card small {
  margin-top: 6px;
}

.orgw-field-status-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.orgw-upgrade-panel {
  display: grid;
  gap: 18px;
}

.orgw-upgrade-panel > header {
  display: grid;
  gap: 8px;
  padding: 8px 2px 0;
}

.orgw-upgrade-panel h2 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1;
}

.orgw-upgrade-panel header p {
  margin: 0;
  color: #6f5131;
  font-size: 1rem;
}

.orgw-upgrade-effect,
.orgw-upgrade-complete,
.orgw-upgrade-requirements-wrap {
  padding: 18px 20px;
  border-radius: 22px;
  border: 1px solid rgba(146, 104, 49, 0.14);
  background: linear-gradient(180deg, rgba(255,250,239,0.98), rgba(243,230,201,0.92));
  box-shadow: 0 14px 28px rgba(70, 46, 16, 0.08);
}

.orgw-upgrade-requirements-wrap h3 {
  margin: 0 0 12px;
}

.orgw-upgrade-requirements {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.orgw-upgrade-requirements li {
  min-height: 92px;
  align-items: center;
}

.orgw-upgrade-confirm {
  min-height: 56px;
  font-size: 1rem;
  border-radius: 18px;
}

.orgw-upgrade-ready-note,
.orgw-upgrade-missing-note {
  text-align: center;
  font-weight: 800;
}

@media (max-width: 900px) {
  .orgw-field-panel-header,
  .orgw-field-upgrade-teaser,
  .orgw-field-status-card,
  .orgw-upgrade-requirements {
    grid-template-columns: 1fr;
  }

  .orgw-field-panel-badges,
  .orgw-field-status-actions {
    justify-content: flex-start;
  }
}

/* v0.10.5: restore reliable planting interactions after the field-modal redesign. */
[data-org-world] button.orgw-choice-card,
[data-org-world] button.orgw-choice-card:hover,
[data-org-world] button.orgw-choice-card:focus,
[data-org-world] button.orgw-choice-card:focus-visible,
[data-org-world] button.orgw-choice-card:active {
  position: relative;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 16px;
  border: 1px solid rgba(133, 91, 45, 0.14) !important;
  border-radius: 20px !important;
  background: rgba(255, 252, 244, 0.96) !important;
  background-image: none !important;
  box-shadow: 0 12px 22px rgba(67, 45, 18, 0.08) !important;
  color: #4d3318 !important;
  text-align: left;
  opacity: 1;
  pointer-events: auto;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

[data-org-world] button.orgw-choice-card:hover,
[data-org-world] button.orgw-choice-card:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(143, 99, 48, 0.34) !important;
  box-shadow: 0 16px 28px rgba(67, 45, 18, 0.13) !important;
}

[data-org-world] button.orgw-choice-card strong {
  color: #4d3318 !important;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

[data-org-world] button.orgw-choice-card span {
  color: #6e4f2d !important;
  font-weight: 800;
}

[data-org-world] button.orgw-choice-card small {
  color: #846744 !important;
  line-height: 1.35;
}

[data-org-world] button.orgw-choice-card:disabled,
[data-org-world] button.orgw-choice-card.is-locked {
  opacity: 0.54;
  filter: grayscale(0.25);
  cursor: not-allowed;
  pointer-events: auto;
}

.orgw-crop-choice-grid {
  margin-top: 12px;
}

/* v0.10.6: reliable field menu click target without fragile alpha-pixel rejection. */
.orgw-plot-main,
.orgw-plot-main[data-alpha-clip] {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%) !important;
  -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%) !important;
}

.orgw-plot-label[role="button"] {
  pointer-events: auto;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.orgw-plot-label[role="button"]:hover,
.orgw-plot-label[role="button"]:focus-visible {
  border-color: rgba(126, 82, 33, 0.36);
  background: rgba(255, 250, 237, 0.98);
  box-shadow: 0 14px 26px rgba(58, 41, 19, 0.16);
  outline: 3px solid rgba(226, 183, 97, 0.28);
  outline-offset: 2px;
}

/* v0.19.0: cleaned Harvest Pass and Season Goals implementation. */
.orgw-modal.is-season-pass {
  padding: 8px;
}
.orgw-modal.is-season-pass .orgw-modal-card {
  width: min(1920px, 99%);
  height: min(1080px, 96vh);
  max-height: none;
  padding: 8px;
  overflow: hidden;
  border-radius: 18px;
  background: linear-gradient(180deg, #e8cf91, #cda75c);
}
.orgw-modal.is-season-pass [data-modal-content] {
  width: 100%;
  height: 100%;
  min-height: 0;
}
.orgw-season-direct-stage {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(180deg, #6f451a 0 18%, #244833 18% 100%);
}
.orgw-season-direct-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.orgw-season-direct-backdrop img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.orgw-season-direct-progress,
.orgw-season-direct-title,
.orgw-season-direct-actions,
.orgw-season-direct-board-window,
.orgw-season-direct-goals-button {
  position: absolute;
  box-sizing: border-box;
}
.orgw-season-direct-progress {
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 14px;
  border: 1px solid #a9782e;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(101,60,19,.97), rgba(72,40,12,.97));
  color: #ffe9b2;
}
.orgw-season-direct-progress strong,
.orgw-season-direct-progress span,
.orgw-season-direct-progress small { display: block; }
.orgw-season-direct-progress > div {
  height: 12px;
  overflow: hidden;
  border: 1px solid rgba(248,214,120,.5);
  border-radius: 999px;
  background: rgba(255,255,255,.15);
}
.orgw-season-direct-progress > div i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg,#f2bd37,#ffe180);
}
.orgw-season-direct-title {
  display: grid;
  place-items: center;
  padding: 3px;
}
.orgw-season-direct-title img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: auto;
  filter: none;
  transform: none;
}
.orgw-season-direct-actions {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-end;
  gap: 8px;
}
.orgw-season-direct-actions button,
.orgw-season-direct-goals-button,
.orgw-season-frame-nav button,
.orgw-season-frame-overflow button,
.orgw-season-frame-weekly button,
.orgw-season-frame-mission button {
  border: 1px solid #99621d;
  border-radius: 11px;
  background: linear-gradient(180deg,#f2d174,#dda63b);
  color: #4a2b0b;
  font-weight: 900;
}
.orgw-season-direct-premium-active {
  align-self: center;
  padding: 10px 12px;
  border: 1px solid #d5a649;
  border-radius: 11px;
  color: #ffeeba;
  background: rgba(57,34,10,.75);
  font-weight: 900;
}
.orgw-season-direct-board-window {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  border: 2px solid #8c5b1d;
  border-radius: 14px;
  background: rgba(20,43,29,.82);
  box-shadow: inset 0 0 0 2px rgba(255,229,158,.12);
}
.orgw-season-direct-board-scene {
  position: relative;
  flex: 0 0 3780px;
  width: 3780px;
  height: 330px;
  max-width: none;
  margin: 0;
  user-select: none;
}
.orgw-season-direct-board-scene > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 3780px;
  height: 330px;
  max-width: none;
  object-fit: fill;
  image-rendering: auto;
  transform: none;
  filter: none;
  pointer-events: none;
}
.orgw-season-direct-board-scene .orgw-season-slot::after { display: none; }
.orgw-season-direct-goals-button {
  display: grid;
  place-items: center;
  padding: 6px 12px;
}

/* Season Goals is the artwork itself, not a panel inside a large square. */
.orgw-modal.is-season-goals-page {
  padding: 0;
}
.orgw-modal.is-season-goals-page .orgw-modal-card {
  width: min(96vw, 94vh);
  height: min(96vw, 94vh);
  max-height: none;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.orgw-modal.is-season-goals-page [data-modal-content] {
  width: 100%;
  height: 100%;
}
.orgw-modal.is-season-goals-page .orgw-modal-close {
  top: 5.5%;
  right: 0.5%;
  z-index: 20;
  width: 10%;
  height: 10%;
  border: 0 !important;
  border-radius: 50%;
  background: transparent !important;
  color: transparent !important;
  box-shadow: none !important;
}
.orgw-season-frame-page,
.orgw-season-frame-stage {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  background: transparent;
}
.orgw-season-frame-art {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: auto;
  pointer-events: none;
}
.orgw-season-frame-nav {
  position: absolute;
  inset: 0;
  z-index: 9;
  pointer-events: none;
}
.orgw-season-frame-nav button {
  position: absolute;
  left: 4%;
  top: 3%;
  padding: 5px 8px;
  pointer-events: auto;
  font-size: clamp(.55rem, 1.2vmin, .78rem);
}
.orgw-season-frame-header,
.orgw-season-frame-overflow,
.orgw-season-frame-weekly,
.orgw-season-frame-missions {
  position: absolute;
  z-index: 3;
  box-sizing: border-box;
}
.orgw-season-frame-header {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 2px;
  padding: 2px 8px;
  text-align: center;
  color: #4a2b0d;
}
.orgw-season-frame-header strong {
  font-size: clamp(.8rem, 2.2vmin, 1.35rem);
  line-height: 1;
}
.orgw-season-frame-header span {
  font-size: clamp(.46rem, 1.05vmin, .7rem);
  line-height: 1.1;
  font-weight: 800;
  color: #76512b;
}
.orgw-season-frame-overflow {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 4px 9px;
  color: #fff0b7;
}
.orgw-season-frame-overflow strong,
.orgw-season-frame-overflow span { display: block; }
.orgw-season-frame-overflow strong {
  font-size: clamp(.58rem, 1.5vmin, .95rem);
  line-height: 1.05;
}
.orgw-season-frame-overflow span {
  font-size: clamp(.4rem, .92vmin, .62rem);
  line-height: 1.1;
}
.orgw-season-frame-overflow button {
  padding: 5px 8px;
  font-size: clamp(.48rem, 1vmin, .68rem);
}
.orgw-season-frame-weekly {
  display: grid;
  align-content: center;
  padding: 4px 8px;
  color: #4b2d0d;
  text-align: center;
}
.orgw-season-frame-weekly h3 {
  margin: 0 0 3px;
  font-size: clamp(.55rem, 1.35vmin, .88rem);
  line-height: 1.05;
}
.orgw-season-frame-weekly-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 3px;
  align-items: center;
}
.orgw-season-frame-weekly-grid span {
  display: grid;
  gap: 1px;
  min-width: 0;
  padding: 2px;
  font-size: clamp(.38rem, .82vmin, .57rem);
  line-height: 1.05;
}
.orgw-season-frame-weekly-grid span b { display: block; }
.orgw-season-frame-weekly-grid > strong,
.orgw-season-frame-weekly-grid > i,
.orgw-season-frame-weekly-grid > button {
  font-size: clamp(.36rem, .76vmin, .54rem);
  line-height: 1.05;
}
.orgw-season-frame-missions { padding: 2px 4px; }
.orgw-season-frame-mission-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 5px;
  width: 100%;
  height: 100%;
}
.orgw-season-frame-mission {
  display: grid;
  align-content: center;
  gap: 2px;
  min-width: 0;
  padding: 4px 3px;
  overflow: hidden;
  text-align: center;
  color: #4a2b0d;
}
.orgw-season-frame-mission strong,
.orgw-season-frame-mission span,
.orgw-season-frame-mission small { display: block; }
.orgw-season-frame-mission strong {
  font-size: clamp(.42rem, .95vmin, .65rem);
  line-height: 1.05;
}
.orgw-season-frame-mission span,
.orgw-season-frame-mission small,
.orgw-season-frame-mission i,
.orgw-season-frame-mission b {
  font-size: clamp(.32rem, .7vmin, .48rem);
  line-height: 1.05;
}
.orgw-season-frame-mission.is-complete { color: #245b2e; }
.orgw-season-frame-page-arrow {
  position: absolute;
  z-index: 8;
  top: 69%;
  width: 7%;
  height: 15%;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  box-shadow: none !important;
}
.orgw-season-frame-page-arrow.is-prev { left: 0; }
.orgw-season-frame-page-arrow.is-next { right: 0; }
.orgw-season-frame-page-arrow:disabled { opacity: .2; }

@media (max-width: 900px) {
  .orgw-season-direct-progress { padding: 7px 9px; font-size: .72rem; }
  .orgw-season-direct-actions { gap: 5px; }
  .orgw-season-direct-actions button,
  .orgw-season-direct-goals-button { padding: 6px 8px; font-size: .72rem; }
  .orgw-modal.is-season-goals-page .orgw-modal-card {
    width: min(98vw, 92vh);
    height: min(98vw, 92vh);
  }
}

@media (prefers-reduced-motion: reduce) {
  .orgw-season-slot.is-claimable { animation: none; }
}

/* v0.20.0 final Season cleanup. */
.orgw-modal.is-season-goals-page { padding:0 !important; background:transparent !important; }
.orgw-modal.is-season-goals-page .orgw-modal-backdrop { background:rgba(18,12,6,.70) !important; }
.orgw-modal.is-season-goals-page .orgw-modal-card { width:min(94vw,94vh) !important; height:min(94vw,94vh) !important; max-width:none !important; max-height:none !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; overflow:visible !important; }
.orgw-season-frame-page,.orgw-season-frame-stage { background:transparent !important; }
.orgw-season-frame-header { padding:1.5% 3%; }
.orgw-season-frame-header strong { font-size:clamp(.72rem,1.9vmin,1.15rem); }
.orgw-season-frame-header span { font-size:clamp(.42rem,.9vmin,.62rem); }
.orgw-season-frame-overflow { padding:2% 4%; }
.orgw-season-frame-weekly { padding:2% 3%; }
.orgw-season-frame-missions { padding:1% 2%; }
.orgw-season-frame-mission-grid { gap:1.2%; }


/* v0.21.0: Market Cart uses the exact uploaded template with dynamic cards. */
.orgw-modal.is-market-cart { padding: 8px; }
.orgw-modal.is-market-cart .orgw-modal-card {
  width: min(1480px, 99%);
  max-height: 97vh;
  padding: 0;
  overflow: hidden;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.orgw-modal.is-market-cart .orgw-modal-close { display: none; }
.orgw-market-template-stage {
  position: relative;
  width: 100%;
  aspect-ratio: 1672 / 941;
  overflow: hidden;
}
.orgw-market-template-art { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; }
.orgw-market-template-close,
.orgw-market-template-arrow { position:absolute; border:0 !important; background:transparent !important; box-shadow:none !important; padding:0 !important; opacity:.01; z-index:8; }
.orgw-market-template-close { left:86.4%; top:8%; width:5.6%; height:9.5%; }
.orgw-market-template-arrow.is-prev { left:9.4%; top:52.5%; width:6.2%; height:11%; }
.orgw-market-template-arrow.is-next { left:86.6%; top:52.5%; width:6.2%; height:11%; }
.orgw-market-template-arrow[disabled] { cursor:default; }
.orgw-market-template-message {
  position:absolute; left:41.5%; top:18.5%; width:43.5%; height:15%; display:grid; place-content:center; gap:6px; text-align:center; color:#5d3819; z-index:3;
}
.orgw-market-template-message strong { font-size:clamp(.82rem,1.6vw,1.45rem); }
.orgw-market-template-message span { font-size:clamp(.65rem,1.15vw,1.05rem); line-height:1.25; }
.orgw-market-template-cards {
  position:absolute; left:15.3%; top:39%; width:71.7%; height:41.5%; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); z-index:4;
}
.orgw-market-template-card { position:relative; display:grid; grid-template-rows:auto minmax(0,1fr) auto auto auto; justify-items:center; align-items:center; gap:3px; min-width:0; padding:4% 5% 5%; color:#5b3518; text-align:center; }
.orgw-market-template-card > strong { font-size:clamp(.58rem,1.15vw,1rem); line-height:1.1; }
.orgw-market-template-card > img { width:min(72%,150px); height:min(48%,150px); object-fit:contain; filter:drop-shadow(0 4px 4px rgba(69,39,8,.18)); }
.orgw-market-template-card > span { font-size:clamp(.52rem,.95vw,.88rem); font-weight:800; }
.orgw-market-template-card > b { font-size:clamp(.62rem,1.1vw,1rem); }
.orgw-market-template-card-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:5%; }
[data-org-world] .orgw-market-template-card-actions button { min-width:0; padding:6% 2%; border-radius:11px; font-size:clamp(.48rem,.85vw,.78rem); }
[data-org-world] .orgw-market-template-card-actions button:first-child { background:linear-gradient(180deg,#9db740,#6e8d1e); color:#fff; border-color:#617a1d; }
[data-org-world] .orgw-market-template-card-actions button:last-child { background:linear-gradient(180deg,#ffc84d,#e9a31d); color:#5a3309; border-color:#c48212; }
.orgw-market-template-card.is-empty > img { opacity:.55; }
.orgw-market-template-dots { position:absolute; left:43.5%; top:83.6%; width:13%; height:3.5%; display:flex; align-items:center; justify-content:center; gap:8%; z-index:6; }
[data-org-world] button.orgw-market-template-dot { width:14px; height:14px; min-width:0; padding:0; border-radius:50%; border:0; background:#b88945; box-shadow:none; }
[data-org-world] button.orgw-market-template-dot.is-active { background:#f0a90d; box-shadow:0 0 0 2px #fff1b8, 0 0 8px #e49a08; }
.orgw-market-template-footer { position:absolute; left:25.5%; top:85.6%; width:38%; margin:0 !important; color:#60411f !important; font-weight:700; font-size:clamp(.48rem,.9vw,.82rem); line-height:1.25; z-index:3; }
@media (max-width:760px) {
  .orgw-market-template-card > img { width:62%; height:42%; }
  [data-org-world] .orgw-market-template-card-actions button { border-radius:7px; }
}

/* v0.23.0: Daily Tasks uses the approved square template both in backend and in-game. */
.orgw-modal.is-daily-tasks { padding: 8px; }
.orgw-modal.is-daily-tasks .orgw-modal-card {
  width: min(1254px, 96vw, 92vh);
  max-width: 96vw;
  max-height: 96vh;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.orgw-modal.is-daily-tasks .orgw-modal-close { display: none; }
.orgw-daily-template-stage {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.orgw-daily-template-art {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: center / contain no-repeat var(--orgw-daily-template), linear-gradient(180deg, rgba(255,248,232,.96), rgba(245,234,210,.96));
  pointer-events: none;
}
.orgw-daily-template-close,
.orgw-daily-template-hit,
.orgw-daily-template-view-pass {
  position: absolute;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: .01;
  padding: 0 !important;
}
.orgw-daily-template-close { left: 86.3%; top: 6.4%; width: 7.2%; height: 7.6%; }
.orgw-daily-template-intro,
.orgw-daily-template-tutorial,
.orgw-daily-template-weekly,
.orgw-daily-template-divider,
.orgw-daily-template-task,
.orgw-daily-template-premium {
  position: absolute;
  box-sizing: border-box;
}
.orgw-daily-template-intro {
  display: grid;
  align-content: center;
  gap: .5%;
  text-align: center;
  color: #4a2b0d;
}
.orgw-daily-template-intro p {
  margin: 0;
  font-weight: 700;
  font-size: clamp(.64rem, 1.28vw, 1.06rem);
  line-height: 1.35;
}
.orgw-daily-template-feedback {
  display: grid;
  gap: 2px;
  margin-top: 1%;
  padding: 1.2% 2%;
  border-radius: 14px;
  background: rgba(255, 251, 236, .9);
  border: 1px solid rgba(126, 89, 43, .18);
}
.orgw-daily-template-feedback strong,
.orgw-daily-template-feedback span { display: block; }
.orgw-daily-template-feedback span { font-size: clamp(.5rem, .8vw, .76rem); }
.orgw-daily-template-feedback.is-success { background: rgba(229,246,220,.92); }
.orgw-daily-template-feedback.is-warning { background: rgba(255,243,203,.95); }
.orgw-daily-template-feedback.is-error { background: rgba(255,228,225,.94); }
.orgw-daily-template-tutorial,
.orgw-daily-template-weekly,
.orgw-daily-template-premium {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 3%;
  padding: 0 4.5% 0 16.5%;
  color: #4a2b0d;
}
.orgw-daily-template-tutorial strong,
.orgw-daily-template-weekly strong,
.orgw-daily-template-premium strong,
.orgw-daily-template-tutorial span,
.orgw-daily-template-weekly span,
.orgw-daily-template-premium span { display: block; }
.orgw-daily-template-tutorial strong,
.orgw-daily-template-weekly strong,
.orgw-daily-template-premium strong {
  font-size: clamp(.84rem, 1.55vw, 1.48rem);
  line-height: 1.05;
}
.orgw-daily-template-tutorial span,
.orgw-daily-template-weekly span,
.orgw-daily-template-premium span {
  font-size: clamp(.54rem, .9vw, .86rem);
  line-height: 1.25;
}
.orgw-daily-template-hit.is-replay { right: 2%; top: 8%; width: 22%; height: 64%; }
.orgw-daily-template-premium .orgw-daily-template-hit.is-open-pass { right: 2%; top: 8%; width: 29%; height: 68%; }
.orgw-daily-template-divider {
  display: grid;
  place-items: center;
  color: #6f4313;
}
.orgw-daily-template-divider strong {
  font-size: clamp(.82rem, 1.45vw, 1.44rem);
  line-height: 1;
}
.orgw-daily-template-task {
  display: grid;
  grid-template-columns: 12% minmax(0, 1fr);
  align-items: center;
  gap: 2.8%;
  padding: 0 4% 0 1.5%;
  color: #4a2b0d;
}
.orgw-daily-template-task.is-complete { color: #2d6b30; }
.orgw-daily-template-task-icon {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  filter: drop-shadow(0 2px 3px rgba(68, 39, 11, .18));
}
.orgw-daily-template-task-copy {
  min-width: 0;
  padding-right: 26%;
}
.orgw-daily-template-task-copy strong,
.orgw-daily-template-task-copy p,
.orgw-daily-template-task-copy span {
  display: block;
}
.orgw-daily-template-task-copy strong {
  font-size: clamp(.86rem, 1.55vw, 1.5rem);
  line-height: 1.05;
}
.orgw-daily-template-task-copy p {
  margin: .18em 0 .34em;
  font-size: clamp(.56rem, .92vw, .92rem);
  line-height: 1.22;
}
.orgw-daily-template-rewards {
  display: flex;
  flex-wrap: wrap;
  gap: .38em;
}
.orgw-daily-template-rewards span,
.orgw-daily-template-deliver {
  padding: .16em .5em;
  border-radius: 999px;
  background: rgba(255, 239, 202, .92);
  border: 1px solid rgba(178, 125, 39, .24);
  font-size: clamp(.48rem, .76vw, .74rem);
  font-weight: 800;
}
.orgw-daily-template-deliver {
  border: 1px solid #8e631d;
  background: linear-gradient(180deg,#f5d67c,#e1a73b) !important;
  color: #4a2b0d !important;
}
.orgw-daily-template-complete {
  display: inline-grid;
  place-items: center;
  min-width: 1.8em;
  color: #2d6b30;
  font-size: clamp(.72rem, 1.18vw, 1.18rem);
}
.orgw-daily-template-task .orgw-daily-template-hit {
  right: 1%;
  top: 12%;
  width: 23.5%;
  height: 68%;
}
.orgw-daily-template-premium {
  padding-left: 15.5%;
}
.orgw-daily-template-premium-active { color: #3b4c1b; }
.orgw-daily-template-view-pass {
  z-index: 4;
}
@media (max-width: 900px) {
  .orgw-modal.is-daily-tasks .orgw-modal-card {
    width: min(96vw, 96vh);
  }
  .orgw-daily-template-intro p { font-size: clamp(.56rem, 1.45vw, .88rem); }
  .orgw-daily-template-tutorial strong,
  .orgw-daily-template-weekly strong,
  .orgw-daily-template-premium strong,
  .orgw-daily-template-task-copy strong { font-size: clamp(.72rem, 1.65vw, 1.1rem); }
  .orgw-daily-template-tutorial span,
  .orgw-daily-template-weekly span,
  .orgw-daily-template-premium span,
  .orgw-daily-template-task-copy p { font-size: clamp(.48rem, 1.15vw, .74rem); }
}


/* v0.25.0: preserve the intended Harvest Pass and Daily Tasks proportions. */
.orgw-modal.is-season-pass .orgw-modal-card {
  width: min(1180px, 96vw, 167vh);
  height: auto;
  aspect-ratio: 16 / 9;
  max-height: 94vh;
}
.orgw-daily-template-art {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent;
  pointer-events: none;
}

/* v0.26.0: master-sized popups and proportionally fitted UI templates. */
.orgw-modal .orgw-modal-card {
  box-sizing: border-box;
}
.orgw-modal.is-season-pass .orgw-modal-card,
.orgw-modal.is-market-cart .orgw-modal-card,
.orgw-modal.is-daily-tasks .orgw-modal-card,
.orgw-modal.is-season-goals-page .orgw-modal-card {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.orgw-season-direct-stage,
.orgw-market-template-stage,
.orgw-daily-template-stage,
.orgw-season-frame-page {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
}
.orgw-season-direct-stage {
  border-radius: 14px;
}
.orgw-season-direct-backdrop img {
  filter: brightness(.82) saturate(.92);
}
.orgw-season-direct-progress,
.orgw-season-direct-title,
.orgw-season-direct-actions,
.orgw-season-direct-board-window,
.orgw-season-direct-goals-button {
  z-index: 3;
}
.orgw-season-direct-board-window {
  align-items: flex-start;
  overflow-x: auto;
  overflow-y: hidden !important;
  scrollbar-gutter: stable;
}
.orgw-season-direct-board-scene {
  position: relative;
  flex: 0 0 auto;
  width: auto;
  height: 100%;
  aspect-ratio: 3780 / 330;
  max-width: none;
  margin: 0;
}
.orgw-season-direct-board-scene > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: fill;
}

/* Market Cart: clean template and individually positioned content. */
.orgw-market-template-stage { position: relative; overflow: hidden; }
.orgw-market-template-art { object-fit: contain; }
.orgw-market-template-message,
.orgw-market-template-cards,
.orgw-market-template-arrow,
.orgw-market-template-dots,
.orgw-market-template-footer { position: absolute; }
.orgw-market-template-message {
  display: grid;
  place-content: center;
  gap: 4px;
  text-align: center;
  color: #5d3819;
  z-index: 3;
}
.orgw-market-template-message strong { font-size: clamp(.72rem,1.35vw,1.28rem); }
.orgw-market-template-message span { font-size: clamp(.55rem,.95vw,.92rem); line-height:1.2; }
.orgw-market-template-cards {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  z-index: 4;
}
.orgw-market-template-card {
  position: relative;
  display: block;
  min-width: 0;
  padding: 0;
  color: #5b3518;
  text-align: center;
}
.orgw-market-template-card > .orgw-market-card-name,
.orgw-market-template-card > .orgw-market-card-image,
.orgw-market-template-card > .orgw-market-card-count,
.orgw-market-template-card > .orgw-market-card-price,
.orgw-market-template-card > .orgw-market-card-sell-one,
.orgw-market-template-card > .orgw-market-card-sell-all {
  position: absolute;
  box-sizing: border-box;
}
.orgw-market-card-name {
  display:grid;
  place-items:center;
  font-size:clamp(.48rem,.78vw,.78rem);
  line-height:1.05;
  overflow:hidden;
}
.orgw-market-card-image {
  object-fit:contain;
  filter:drop-shadow(0 3px 4px rgba(69,39,8,.16));
}
.orgw-market-card-count { display:grid; place-items:center; font-size:clamp(.42rem,.7vw,.7rem); font-weight:800; }
.orgw-market-card-price { display:grid; place-items:center; font-size:clamp(.48rem,.78vw,.78rem); }
[data-org-world] .orgw-market-card-sell-one,
[data-org-world] .orgw-market-card-sell-all {
  min-width:0;
  padding:0;
  border:0;
  background:transparent !important;
  color:transparent !important;
  box-shadow:none !important;
  opacity:.02;
}
.orgw-market-template-arrow,
.orgw-market-template-close { opacity:.02; }
.orgw-market-template-footer {
  margin:0 !important;
  color:#60411f !important;
  font-weight:700;
  font-size:clamp(.42rem,.72vw,.72rem);
  line-height:1.18;
  z-index:3;
}

/* Daily Tasks: no checkerboard container and exact backend percentages. */
.orgw-daily-template-stage {
  position: relative;
  overflow: hidden;
  background: transparent !important;
}
.orgw-daily-template-art {
  background-color: transparent !important;
  background-image: var(--orgw-daily-template) !important;
  background-position:center !important;
  background-size:contain !important;
  background-repeat:no-repeat !important;
}
.orgw-daily-template-intro,
.orgw-daily-template-tutorial-text,
.orgw-daily-template-weekly-text,
.orgw-daily-template-divider,
.orgw-daily-template-task,
.orgw-daily-template-premium-text,
.orgw-daily-template-transparent-action,
.orgw-daily-template-view-pass {
  position:absolute;
  box-sizing:border-box;
}
.orgw-daily-template-intro { display:grid; place-content:center; text-align:center; color:#4a2b0d; }
.orgw-daily-template-intro p { margin:0; font-size:clamp(.5rem,.82vw,.78rem); line-height:1.2; }
.orgw-daily-template-tutorial-text,
.orgw-daily-template-weekly-text,
.orgw-daily-template-premium-text {
  display:grid;
  align-content:center;
  color:#4a2b0d;
  overflow:hidden;
}
.orgw-daily-template-tutorial-text strong,
.orgw-daily-template-weekly-text strong,
.orgw-daily-template-premium-text strong { font-size:clamp(.58rem,1vw,.92rem); line-height:1.05; }
.orgw-daily-template-tutorial-text span,
.orgw-daily-template-weekly-text span,
.orgw-daily-template-premium-text span { font-size:clamp(.42rem,.7vw,.68rem); line-height:1.15; }
.orgw-daily-template-transparent-action,
.orgw-daily-template-view-pass,
.orgw-daily-task-track {
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:transparent !important;
  opacity:.02;
  padding:0 !important;
}
.orgw-daily-template-divider { display:grid; place-items:center; color:#6f4313; }
.orgw-daily-template-divider strong { font-size:clamp(.58rem,.95vw,.9rem); }
.orgw-daily-template-task { color:#4a2b0d; overflow:hidden; }
.orgw-daily-template-task > .orgw-daily-task-icon,
.orgw-daily-template-task > .orgw-daily-task-title,
.orgw-daily-template-task > .orgw-daily-task-description,
.orgw-daily-template-task > .orgw-daily-task-rewards,
.orgw-daily-template-task > .orgw-daily-task-track { position:absolute; box-sizing:border-box; }
.orgw-daily-task-icon { object-fit:contain; }
.orgw-daily-task-title { display:grid; align-items:center; font-size:clamp(.58rem,.95vw,.92rem); line-height:1.05; overflow:hidden; }
.orgw-daily-task-description { margin:0; font-size:clamp(.4rem,.68vw,.64rem); line-height:1.12; overflow:hidden; }
.orgw-daily-task-rewards { display:flex; flex-wrap:wrap; align-content:center; gap:2px; overflow:hidden; }
.orgw-daily-task-rewards span,
.orgw-daily-task-rewards b,
.orgw-daily-template-deliver { font-size:clamp(.34rem,.55vw,.54rem); line-height:1; padding:2px 4px; border-radius:999px; background:rgba(255,239,202,.92); }
.orgw-daily-template-premium-text { padding-left:0; }
.orgw-daily-template-close { opacity:.02; }

@media (max-width:760px) {
  .orgw-market-template-message strong { font-size:.75rem; }
  .orgw-market-template-message span { font-size:.52rem; }
  .orgw-daily-template-tutorial-text strong,
  .orgw-daily-template-weekly-text strong,
  .orgw-daily-template-premium-text strong,
  .orgw-daily-task-title { font-size:.6rem; }
  .orgw-daily-template-tutorial-text span,
  .orgw-daily-template-weekly-text span,
  .orgw-daily-template-premium-text span,
  .orgw-daily-task-description { font-size:.42rem; }
}


/* v0.27.0: single 1920×1080 reference stage and stable popup rendering. */
.orgw-modal.is-season-pass [data-modal-content],
.orgw-modal.is-market-cart [data-modal-content],
.orgw-modal.is-daily-tasks [data-modal-content],
.orgw-modal.is-season-goals-page [data-modal-content] {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}
.orgw-season-direct-stage,
.orgw-market-template-stage,
.orgw-daily-template-stage,
.orgw-season-frame-page,
.orgw-season-frame-stage {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}
.orgw-market-template-art,
.orgw-daily-template-art {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  background: transparent !important;
  pointer-events: none;
}
.orgw-market-template-art.is-fallback,
.orgw-daily-template-art.is-fallback {
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,248,230,.98), rgba(233,211,165,.98)) !important;
  box-shadow: inset 0 0 0 4px rgba(111,70,24,.7);
}
.orgw-market-template-message,
.orgw-market-template-cards,
.orgw-market-template-arrow,
.orgw-market-template-dots,
.orgw-market-template-footer,
.orgw-market-template-close,
.orgw-daily-template-intro,
.orgw-daily-template-tutorial-text,
.orgw-daily-template-weekly-text,
.orgw-daily-template-divider,
.orgw-daily-template-task,
.orgw-daily-template-premium-text,
.orgw-daily-template-transparent-action,
.orgw-daily-template-view-pass,
.orgw-daily-template-close {
  z-index: 3;
}
.orgw-season-direct-board-window {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
}
.orgw-season-direct-board-scene {
  height: 100% !important;
  width: auto !important;
  aspect-ratio: 3780 / 330 !important;
  flex: 0 0 auto !important;
}
.orgw-season-direct-board-scene > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

/* v0.27.1: five independently positioned Market Cart cards and alpha-safe Daily Tasks. */
.orgw-market-template-card {
  position: absolute !important;
  z-index: 4;
  display: block !important;
  min-width: 0;
  padding: 0 !important;
  box-sizing: border-box;
  color: #5b3518;
  text-align: center;
}
.orgw-market-template-close,
.orgw-market-template-arrow,
.orgw-market-template-dots,
.orgw-market-template-footer,
.orgw-market-template-message { position: absolute; }
.orgw-daily-template-art {
  background-color: transparent !important;
  background-image: none !important;
}
.orgw-modal.is-daily-tasks,
.orgw-modal.is-daily-tasks .orgw-modal-card,
.orgw-modal.is-daily-tasks [data-modal-content],
.orgw-daily-template-stage {
  background-color: transparent !important;
  background-image: none !important;
}


/* v0.27.4: configurable popup typography and complete Season Goals content. */
.orgw-season-direct-progress strong {
  font-size: var(--orgw-harvest-progress_title, 16px) !important;
}
.orgw-season-direct-progress span,
.orgw-season-direct-progress small {
  font-size: var(--orgw-harvest-progress_body, 11px) !important;
}
[data-org-world] .orgw-season-direct-actions button,
.orgw-season-direct-premium-active {
  font-size: var(--orgw-harvest-actions, 12px) !important;
}
[data-org-world] .orgw-season-direct-goals-button {
  font-size: var(--orgw-harvest-goals_button, 14px) !important;
}

.orgw-daily-template-intro p {
  font-size: var(--orgw-tasks-intro, 11px) !important;
}
.orgw-daily-template-tutorial-text strong,
.orgw-daily-template-weekly-text strong,
.orgw-daily-template-premium-text strong {
  font-size: var(--orgw-tasks-section_title, 14px) !important;
}
.orgw-daily-template-tutorial-text span,
.orgw-daily-template-weekly-text span,
.orgw-daily-template-premium-text span {
  font-size: var(--orgw-tasks-section_body, 10px) !important;
}
.orgw-daily-template-divider strong {
  font-size: var(--orgw-tasks-divider, 14px) !important;
}
.orgw-daily-task-title {
  font-size: var(--orgw-tasks-task_title, 13px) !important;
}
.orgw-daily-task-description {
  font-size: var(--orgw-tasks-task_description, 10px) !important;
}
.orgw-daily-task-rewards span,
.orgw-daily-task-rewards b,
.orgw-daily-template-deliver {
  font-size: var(--orgw-tasks-task_meta, 9px) !important;
}
[data-org-world] .orgw-daily-template-deliver,
[data-org-world] .orgw-daily-task-track,
[data-org-world] .orgw-daily-template-view-pass {
  font-size: var(--orgw-tasks-button, 11px) !important;
}

.orgw-market-template-message strong {
  font-size: var(--orgw-market-message_title, 18px) !important;
}
.orgw-market-template-message span {
  font-size: var(--orgw-market-message_body, 13px) !important;
}
.orgw-market-card-name {
  font-size: var(--orgw-market-product_name, 13px) !important;
}
.orgw-market-card-count {
  font-size: var(--orgw-market-product_meta, 10px) !important;
}
.orgw-market-card-price {
  font-size: var(--orgw-market-price, 11px) !important;
}
[data-org-world] .orgw-market-card-sell-one,
[data-org-world] .orgw-market-card-sell-all {
  font-size: var(--orgw-market-button, 11px) !important;
}
.orgw-market-template-footer {
  font-size: var(--orgw-market-footer, 10px) !important;
}

.orgw-season-frame-header strong {
  font-size: var(--orgw-season-header_title, 21px) !important;
  line-height: 1.05;
}
.orgw-season-frame-header span {
  font-size: var(--orgw-season-header_meta, 10px) !important;
}
.orgw-season-frame-overflow {
  display: grid !important;
  grid-template-columns: minmax(0, 24%) minmax(0, 1fr) minmax(74px, 23%);
  align-items: center;
  gap: 1.5%;
  padding: .6% 2.2% !important;
  overflow: hidden;
}
.orgw-season-frame-overflow-icon {
  width: 100%;
  height: 100%;
  min-width: 0;
  object-fit: contain;
  filter: drop-shadow(0 2px 2px rgba(20, 11, 3, .35));
}
.orgw-season-frame-overflow-copy {
  min-width: 0;
  overflow: hidden;
}
.orgw-season-frame-overflow-copy strong {
  display: block;
  font-size: var(--orgw-season-overflow_title, 18px) !important;
  line-height: 1.02;
}
.orgw-season-frame-overflow-copy span {
  display: block;
  margin-top: 2px;
  font-size: var(--orgw-season-overflow_body, 12px) !important;
  line-height: 1.08;
}
[data-org-world] .orgw-season-frame-overflow button {
  min-width: 0;
  width: 100%;
  padding: 6% 2%;
  font-size: var(--orgw-season-button, 11px) !important;
  white-space: nowrap;
}
.orgw-season-frame-weekly {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr);
  align-content: stretch !important;
  gap: 2%;
  padding: 1.3% 3.5% 1.5% !important;
  overflow: hidden;
}
.orgw-season-frame-weekly h3 {
  margin: 0 !important;
  font-size: var(--orgw-season-weekly_title, 18px) !important;
  line-height: 1;
}
.orgw-season-frame-weekly-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.2%;
  min-height: 0;
  align-items: stretch;
}
.orgw-season-weekly-item,
.orgw-season-weekly-status {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto;
  place-items: center;
  align-content: center;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 1% 2% !important;
  overflow: hidden;
  text-align: center;
  color: #4b2d0d;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.orgw-season-weekly-item img {
  width: 52%;
  height: 100%;
  min-height: 0;
  object-fit: contain;
}
.orgw-season-weekly-item b {
  font-size: var(--orgw-season-weekly_label, 12px) !important;
  line-height: 1;
}
.orgw-season-weekly-item em,
.orgw-season-weekly-status {
  font-size: var(--orgw-season-weekly_progress, 12px) !important;
  line-height: 1;
  font-style: normal;
}
.orgw-season-frame-missions {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 2%;
  padding: 0 1.6% 1.2% !important;
  overflow: hidden;
}
.orgw-season-frame-missions > h3 {
  margin: 0;
  text-align: center;
  color: #5c3513;
  font-family: Georgia, serif;
  font-size: var(--orgw-season-missions_title, 17px) !important;
  line-height: 1;
}
.orgw-season-frame-mission-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.2% !important;
  min-height: 0;
}
.orgw-season-frame-mission {
  display: grid !important;
  grid-template-rows: minmax(0, 38%) auto minmax(0, 1fr) auto auto;
  align-content: stretch !important;
  justify-items: center;
  gap: 1%;
  padding: 2% 4% 1.5% !important;
  overflow: hidden;
}
.orgw-season-frame-mission-icon {
  width: 72%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 2px 2px rgba(63, 36, 10, .22));
}
.orgw-season-frame-mission strong {
  font-size: var(--orgw-season-mission_title, 13px) !important;
  line-height: 1.02;
}
.orgw-season-frame-mission span {
  font-size: var(--orgw-season-mission_body, 10px) !important;
  line-height: 1.05;
}
.orgw-season-frame-mission small {
  font-size: var(--orgw-season-mission_progress, 10px) !important;
  line-height: 1.02;
}
.orgw-season-frame-mission i,
.orgw-season-frame-mission b,
[data-org-world] .orgw-season-frame-mission button {
  align-self: end;
  width: 100%;
  min-width: 0;
  padding: 2% 1%;
  overflow: hidden;
  font-size: var(--orgw-season-button, 11px) !important;
  line-height: 1;
  font-style: normal;
  white-space: nowrap;
}
.orgw-season-frame-page-arrow {
  position: absolute !important;
  top: auto !important;
  z-index: 8;
  padding: 0 !important;
  color: transparent !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: .02;
}

/* v0.27.6: exact Food Storage house, colour-aware popup text and editable Season Goals close hitbox. */
.orgw-food-storage img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.orgw-modal.is-season-goals-page .orgw-modal-card > .orgw-modal-close {
  display: none !important;
  pointer-events: none !important;
}
[data-org-world] button.orgw-season-frame-close-hotspot,
[data-org-world] button.orgw-season-frame-close-hotspot:hover,
[data-org-world] button.orgw-season-frame-close-hotspot:focus,
[data-org-world] button.orgw-season-frame-close-hotspot:active {
  position: absolute !important;
  z-index: 20;
  display: block;
  min-width: 0;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50%;
  color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: .01;
  cursor: pointer;
}

.orgw-season-direct-progress strong { color: var(--orgw-harvest-progress_title-color, #fff1bd) !important; }
.orgw-season-direct-progress span,
.orgw-season-direct-progress small { color: var(--orgw-harvest-progress_body-color, #ffe7a5) !important; }
[data-org-world] .orgw-season-direct-actions button,
.orgw-season-direct-premium-active { color: var(--orgw-harvest-actions-color, #4a2b0b) !important; }
[data-org-world] .orgw-season-direct-goals-button { color: var(--orgw-harvest-goals_button-color, #4a2b0b) !important; }

.orgw-daily-template-intro p { color: var(--orgw-tasks-intro-color, #4b2d18) !important; }
.orgw-daily-template-tutorial-text strong,
.orgw-daily-template-weekly-text strong,
.orgw-daily-template-premium-text strong { color: var(--orgw-tasks-section_title-color, #4b2d18) !important; }
.orgw-daily-template-tutorial-text span,
.orgw-daily-template-weekly-text span,
.orgw-daily-template-premium-text span { color: var(--orgw-tasks-section_body-color, #5b3a22) !important; }
.orgw-daily-template-divider strong { color: var(--orgw-tasks-divider-color, #5b3518) !important; }
.orgw-daily-task-title { color: var(--orgw-tasks-task_title-color, #4b2d18) !important; }
.orgw-daily-task-description { color: var(--orgw-tasks-task_description-color, #5b3a22) !important; }
.orgw-daily-task-rewards span,
.orgw-daily-task-rewards b,
.orgw-daily-template-deliver { color: var(--orgw-tasks-task_meta-color, #5b3a22) !important; }
[data-org-world] .orgw-daily-template-deliver,
[data-org-world] .orgw-daily-task-track,
[data-org-world] .orgw-daily-template-view-pass { color: var(--orgw-tasks-button-color, #4a2b0b) !important; }

.orgw-market-template-message strong { color: var(--orgw-market-message_title-color, #4b2d18) !important; }
.orgw-market-template-message span { color: var(--orgw-market-message_body-color, #5b3a22) !important; }
.orgw-market-card-name { color: var(--orgw-market-product_name-color, #4b2d18) !important; }
.orgw-market-card-count { color: var(--orgw-market-product_meta-color, #5b3a22) !important; }
.orgw-market-card-price { color: var(--orgw-market-price-color, #5b3518) !important; }
[data-org-world] .orgw-market-card-sell-one,
[data-org-world] .orgw-market-card-sell-all { color: var(--orgw-market-button-color, #4a2b0b) !important; }
.orgw-market-template-footer { color: var(--orgw-market-footer-color, #5b3a22) !important; }

.orgw-season-frame-header strong { color: var(--orgw-season-header_title-color, #5b3518) !important; }
.orgw-season-frame-header span { color: var(--orgw-season-header_meta-color, #6b4725) !important; }
.orgw-season-frame-overflow-copy strong { color: var(--orgw-season-overflow_title-color, #f6d77c) !important; }
.orgw-season-frame-overflow-copy span { color: var(--orgw-season-overflow_body-color, #fff0b5) !important; }
.orgw-season-frame-weekly h3 { color: var(--orgw-season-weekly_title-color, #5b3518) !important; }
.orgw-season-weekly-item b { color: var(--orgw-season-weekly_label-color, #4b2d0d) !important; }
.orgw-season-weekly-item em,
.orgw-season-weekly-status { color: var(--orgw-season-weekly_progress-color, #4b2d0d) !important; }
.orgw-season-frame-missions > h3 { color: var(--orgw-season-missions_title-color, #5c3513) !important; }
.orgw-season-frame-mission strong { color: var(--orgw-season-mission_title-color, #4b2d18) !important; }
.orgw-season-frame-mission span { color: var(--orgw-season-mission_body-color, #5b3a22) !important; }
.orgw-season-frame-mission small { color: var(--orgw-season-mission_progress-color, #5b3a22) !important; }
.orgw-season-frame-overflow button,
.orgw-season-frame-mission i,
.orgw-season-frame-mission b,
[data-org-world] .orgw-season-frame-mission button { color: var(--orgw-season-button-color, #fff0b5) !important; }

/* ========================================================================
   ORG World 0.1.1 scenic layered world
   The 1920×1080 background carries the buildings and ground. Crops, animals,
   ORG, Market Cart, indicators and hit areas stay as independent layers.
   ======================================================================== */

.orgw-world-invisible-hotspot {
  background: transparent !important;
  border-radius: 18px;
}

.orgw-world-invisible-hotspot::after {
  content: "";
  position: absolute;
  inset: 4%;
  border: 3px solid rgba(255, 221, 123, 0);
  border-radius: 18px;
  box-shadow: 0 0 0 rgba(255, 216, 94, 0);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
  pointer-events: none;
}

.orgw-world-invisible-hotspot:hover::after,
.orgw-world-invisible-hotspot:focus-visible::after,
.orgw-world-invisible-hotspot.is-tutorial-target::after {
  border-color: rgba(255, 225, 126, .92);
  background: rgba(255, 236, 157, .08);
  box-shadow: 0 0 22px rgba(255, 213, 88, .55), inset 0 0 18px rgba(255, 239, 180, .18);
}

.orgw-world-board-badge {
  position: absolute;
  right: 4%;
  top: 2%;
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #fff9e8;
  background: linear-gradient(#df7b2c, #a74317);
  border: 2px solid #ffd27a;
  font-weight: 900;
  font-size: 19px;
  box-shadow: 0 8px 18px rgba(75, 38, 8, .28);
  pointer-events: none;
}

.orgw-task-board.is-complete .orgw-world-board-badge {
  display: none;
}

.orgw-org-character {
  position: absolute;
  background-image: var(--orgw-org-idle-image);
  background-repeat: no-repeat;
  background-size: 600% 100%;
  background-position: 0 0;
  animation: orgw-org-idle 3.6s steps(1, end) infinite;
  pointer-events: none;
  filter: drop-shadow(0 10px 9px rgba(42, 28, 12, .28));
  transform-origin: center bottom;
}

[data-org-world] .orgw-org-character {
  --orgw-org-idle-image: url('../images/org-world/org-world-org-idle-sheet.webp');
}

@keyframes orgw-org-idle {
  0%, 13% { background-position: 0% 0; }
  16%, 29% { background-position: 20% 0; }
  32%, 45% { background-position: 40% 0; }
  48%, 61% { background-position: 60% 0; }
  64%, 77% { background-position: 80% 0; }
  80%, 100% { background-position: 100% 0; }
}

.orgw-world-plot {
  pointer-events: none;
  overflow: visible;
}

.orgw-world-crops {
  position: absolute;
  inset: 6% 8% 17%;
  pointer-events: none;
  z-index: 2;
}

.orgw-world-crop {
  position: absolute;
  width: 28%;
  height: 40%;
  object-fit: contain;
  transform: translate(-50%, -50%) scale(var(--orgw-field-art-scale, 1));
  transform-origin: center bottom;
  filter: drop-shadow(0 4px 3px rgba(55, 34, 11, .24));
  pointer-events: none;
}

.orgw-world-field-foreground {
  position: absolute;
  left: -6%;
  right: -6%;
  bottom: -3%;
  width: 112%;
  height: 48%;
  object-fit: contain;
  object-position: center bottom;
  pointer-events: none;
  z-index: 4;
  opacity: .98;
}

.orgw-world-plot .orgw-plot-main {
  clip-path: polygon(10% 9%, 88% 4%, 98% 76%, 50% 100%, 3% 78%);
  z-index: 5;
}

.orgw-world-plot .orgw-plot-label {
  left: 50%;
  top: 80%;
  bottom: auto;
  transform: translate(-50%, -50%);
  z-index: 7;
}

.orgw-world-plot .orgw-grow-time {
  top: 73%;
  z-index: 8;
}

.orgw-world-plot .orgw-progress {
  left: 23%;
  right: 23%;
  bottom: 3%;
  z-index: 8;
}

.orgw-world-plot .orgw-status-action {
  left: 50%;
  top: 47%;
  z-index: 9;
}

.orgw-shared-pen-zone {
  overflow: visible;
  z-index: 82 !important;
}

.orgw-shared-pen-zone .orgw-pen-canvas {
  left: 0;
  top: 0;
  width: 100%;
  height: 76%;
}

.orgw-shared-pen-zone .orgw-pen-label {
  left: 3%;
  right: 3%;
  bottom: -8%;
  padding: 5px 8px;
  border-radius: 12px;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .16s ease, transform .16s ease;
  z-index: 8;
}

.orgw-shared-pen-zone:hover .orgw-pen-label,
.orgw-shared-pen-zone:focus-visible .orgw-pen-label {
  opacity: 1;
  transform: translateY(0);
}

.orgw-world-pen-foreground {
  position: absolute;
  left: 73.5%;
  top: 38.2%;
  width: 22.5%;
  height: 15%;
  object-fit: contain;
  object-position: center bottom;
  pointer-events: none;
  z-index: 86;
}

.orgw-market-cart {
  z-index: 90;
}

.orgw-market-cart img {
  object-position: center bottom;
  filter: drop-shadow(0 12px 10px rgba(49, 30, 9, .26));
}

.orgw-market-cart-label {
  display: none !important;
}

.orgw-house,
.orgw-food-storage,
.orgw-task-board,
.orgw-dock {
  z-index: 96;
}

.orgw-dock-panel header {
  margin-bottom: 18px;
}

.orgw-dock-panel h2 {
  margin: 4px 0 6px;
}

.orgw-dock-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

[data-org-world] .orgw-dock-actions button {
  appearance: none;
  border: 1px solid rgba(110, 75, 33, .25);
  background: linear-gradient(180deg, #fff9eb, #f0d9ae);
  color: #4d3217;
  border-radius: 17px;
  padding: 16px;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(70, 45, 14, .10);
}

.orgw-dock-actions strong,
.orgw-dock-actions span {
  display: block;
}

.orgw-dock-actions strong {
  font-size: 1rem;
  margin-bottom: 5px;
}

.orgw-dock-actions span {
  font-size: .82rem;
  line-height: 1.35;
  opacity: .82;
}

/* The legacy well/chop/log overlays are intentionally compact. They preserve
   all established mechanics without covering the new scenic background. */
.orgw-well,
.orgw-wood-action {
  opacity: .92;
}

.orgw-game-layout-editor .orgw-world-invisible-hotspot {
  background: rgba(255, 223, 130, .10) !important;
  outline: 2px dashed rgba(255, 245, 199, .85) !important;
}

@media (max-width: 900px) {
  .orgw-world-board-badge { min-width: 26px; height: 26px; font-size: 15px; }
  .orgw-dock-actions { grid-template-columns: 1fr; }
}

/* Foreground mask files are bundled for future pixel calibration. The approved
   master scene already contains its fences, so they stay disabled by default. */
.orgw-world-field-foreground, .orgw-world-pen-foreground { display: none !important; }


/* ORG World production occlusion policy */
.orgw-world-field-foreground,
.orgw-world-pen-foreground {
  display: none !important;
}


/* ========================================================================
   ORG World 0.1.2 — shared pen, compact task-board preview and task tracking
   ======================================================================== */
.orgw-world-board-preview {
  position: absolute;
  left: 50%;
  top: 48%;
  width: 78%;
  transform: translate(-50%, -50%);
  display: grid;
  gap: 6px;
  place-items: center;
  text-align: center;
  color: #5a3518;
  text-shadow: 0 1px rgba(255,255,255,.85);
  pointer-events: none;
  opacity: .98;
}
.orgw-world-board-preview strong {
  font-size: clamp(.8rem, 1.35vw, 1.18rem);
  line-height: 1.05;
  font-weight: 800;
}
.orgw-world-board-preview small {
  max-width: 100%;
  font-size: clamp(.58rem, .9vw, .82rem);
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
}
.orgw-task-board.is-complete .orgw-world-board-preview { color: #355b27; }

[data-org-world] .is-task-track-target {
  animation: orgw-task-track-pulse 1.05s ease-in-out infinite !important;
  filter: drop-shadow(0 0 12px rgba(255, 212, 70, .95)) drop-shadow(0 0 26px rgba(255, 139, 35, .75)) !important;
  outline: 4px solid rgba(255, 221, 85, .95) !important;
  outline-offset: 3px !important;
  border-radius: 18px;
  z-index: 190 !important;
}
[data-org-world] .orgw-plot.is-task-track-target {
  outline-offset: -2px !important;
}
[data-org-world] .orgw-pen.is-task-track-target {
  pointer-events: auto !important;
  background: rgba(255, 224, 104, .08) !important;
}
@keyframes orgw-task-track-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.045); }
}

/* The shared animal pen uses rectangular hit areas because the visible fence is
   baked into the approved world background. Empty canvases must remain tappable. */
[data-org-world] .orgw-shared-pen-zone {
  pointer-events: auto !important;
  touch-action: manipulation;
}

@media (max-width: 900px) {
  .orgw-world-board-preview { width: 76%; gap: 2px; }
  .orgw-world-board-preview strong { font-size: clamp(.48rem, 1.6vw, .72rem); }
  .orgw-world-board-preview small { font-size: clamp(.34rem, 1.05vw, .52rem); }
}


/* ========================================================================
   ORG World 0.1.3 — one main ORG and reliable animal world placement
   ======================================================================== */
.orgw-org-character { display: none !important; }
.orgw-main-org-sprite { display:none !important; }
.orgw-main-org-sprite {
  display: block;
  width: 100%;
  height: 100%;
  background-image: var(--orgw-main-org-image);
  background-repeat: no-repeat;
  background-size: 600% 100%;
  background-position: 0 0;
  animation: orgw-main-org-idle 3.6s steps(1, end) infinite;
  filter: drop-shadow(0 12px 12px rgba(48, 33, 15, .28));
  transform-origin: 45% 100%;
  pointer-events: auto;
  cursor: pointer;
}
.orgw-visitor-panel.is-main-org > img { display: none !important; }
.orgw-visitor-panel:not(.is-main-org) .orgw-main-org-sprite { display: none !important; }
.orgw-visitor-panel.is-blinking.is-main-org .orgw-main-org-sprite {
  animation: orgw-main-org-idle 3.6s steps(1,end) infinite, orgwQuestCharacterBlink 1.35s ease-in-out infinite;
}
@keyframes orgw-main-org-idle {
  0%,13% { background-position: 0% 0; }
  16%,29% { background-position: 20% 0; }
  32%,45% { background-position: 40% 0; }
  48%,61% { background-position: 60% 0; }
  64%,77% { background-position: 80% 0; }
  80%,100% { background-position: 100% 0; }
}
.orgw-shared-pen-zone .orgw-pen-canvas {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 5;
}
.orgw-game-layout-editor .orgw-shared-pen-zone {
  background: rgba(255, 221, 112, .06) !important;
  outline: 2px dashed rgba(255, 242, 183, .86) !important;
}


/* ORG World 0.1.7 — exact uploaded Daily Tasks and Harvest Pass templates. */
.orgw-modal.is-daily-tasks,
.orgw-modal.is-season-pass { padding:0 !important; background:rgba(4,12,17,.76) !important; }
.orgw-modal.is-daily-tasks .orgw-modal-backdrop,
.orgw-modal.is-season-pass .orgw-modal-backdrop { background:rgba(5,13,18,.72) !important; }
.orgw-modal.is-daily-tasks .orgw-modal-card,
.orgw-modal.is-season-pass .orgw-modal-card { padding:0 !important; border:0 !important; background:transparent !important; box-shadow:0 28px 80px rgba(0,0,0,.62) !important; overflow:hidden !important; border-radius:18px !important; }
.orgw-modal.is-daily-tasks .orgw-modal-card > .orgw-modal-close,
.orgw-modal.is-season-pass .orgw-modal-card > .orgw-modal-close { display:none !important; }
.orgw-modal.is-daily-tasks [data-modal-content],
.orgw-modal.is-season-pass [data-modal-content] { position:absolute !important; inset:0 !important; overflow:hidden !important; }
.orgw-exact-template { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; z-index:0; pointer-events:none; user-select:none; }
.orgw-template-hotspot { position:absolute !important; z-index:20 !important; display:block !important; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; color:transparent !important; cursor:pointer !important; }
.orgw-template-hotspot:hover,.orgw-template-hotspot:focus-visible { outline:2px solid rgba(255,226,128,.7) !important; outline-offset:-2px; border-radius:8px; }

/* Exact Daily Tasks template: content is confined to blank parchment. */
.orgw-tasks-v3 { position:absolute; inset:0; overflow:hidden; color:#4a3015; font-family:Georgia,'Times New Roman',serif; }
.orgw-tasks-v3-meta { position:absolute; z-index:4; left:20.5%; top:16.7%; width:59%; height:5.2%; display:flex; align-items:center; justify-content:center; gap:1.2%; color:#765326; font-weight:800; font-size:clamp(9px,.85vw,16px); }
.orgw-tasks-v3-meta button { border:1px solid #b98a45 !important; border-radius:999px !important; padding:.35em .9em !important; background:rgba(255,244,213,.86) !important; color:#66431d !important; font:800 inherit !important; }
.orgw-tasks-v3-feedback { position:absolute; z-index:6; left:18.2%; top:21.5%; width:63.6%; padding:.7% 1%; border:1px solid #b7853c; border-radius:8px; background:#fff1cceF; display:flex; gap:1%; align-items:center; }
.orgw-tasks-v3-feedback strong,.orgw-tasks-v3-feedback span { display:block; }
.orgw-tasks-v3-scroll { position:absolute; z-index:3; left:17.3%; top:21.7%; width:65.5%; height:65.4%; padding:.4% .9% .8%; overflow-y:auto; overflow-x:hidden; background:transparent; scrollbar-width:thin; scrollbar-color:#9f6c2d transparent; }
.orgw-tasks-v3-feedback + .orgw-tasks-v3-scroll { top:29%; height:58.1%; }
.orgw-tasks-v3-scroll h3 { position:sticky; top:0; z-index:2; margin:0 0 .45%; padding:.42% 1%; text-align:center; color:#6b481e; font:900 clamp(13px,1.15vw,22px)/1 Georgia,serif; background:linear-gradient(90deg,transparent,#f3dca9e8 18% 82%,transparent); border-bottom:1px solid #c6a46d; }
.orgw-tasks-v3-row { display:grid; grid-template-columns:9.2% minmax(0,1fr) 13% 16.8%; gap:1%; align-items:center; min-height:clamp(72px,8.6vh,112px); margin:0 0 .7%; padding:.65% .85%; border:1px solid rgba(164,113,48,.55); border-radius:9px; background:linear-gradient(90deg,rgba(255,249,230,.82),rgba(245,219,166,.78)); box-shadow:0 2px 5px rgba(78,46,15,.15),inset 0 1px rgba(255,255,255,.8); }
.orgw-tasks-v3-row.is-complete { background:linear-gradient(90deg,rgba(235,246,210,.9),rgba(209,229,164,.86)); }
.orgw-tasks-v3-icon { display:grid; place-items:center; width:100%; aspect-ratio:1; border:1px solid #c59a56; border-radius:9px; background:rgba(255,248,225,.9); overflow:hidden; }
.orgw-tasks-v3-icon img { width:82%; height:82%; object-fit:contain; }
.orgw-tasks-v3-copy { min-width:0; }
.orgw-tasks-v3-copy strong { display:block; color:var(--orgw-tasks-title-color,#4b2d18); font-size:clamp(13px,1.18vw,22px); line-height:1.05; }
.orgw-tasks-v3-copy p { margin:.18em 0 .35em; color:var(--orgw-tasks-description-color,#6c4b29); font-size:clamp(9px,.73vw,14px); line-height:1.15; }
.orgw-tasks-v3-progress { position:relative; height:clamp(13px,1.5vh,21px); border:1px solid #aa854d; border-radius:999px; background:#ead8b3; overflow:hidden; }
.orgw-tasks-v3-progress i { display:block; height:100%; background:linear-gradient(#91c94b,#5d9c25); }
.orgw-tasks-v3-progress b { position:absolute; inset:0; display:grid; place-items:center; color:#3e321c; font-size:clamp(8px,.65vw,12px); text-shadow:0 1px #fff8; }
.orgw-tasks-v3-reward { text-align:center; color:var(--orgw-tasks-reward-color,#4b3218); }
.orgw-tasks-v3-reward span { display:block; font-weight:900; font-size:clamp(13px,1.15vw,21px); line-height:1; }
.orgw-tasks-v3-reward small,.orgw-tasks-v3-reward em { display:block; font-size:clamp(7px,.58vw,11px); font-style:normal; }
.orgw-tasks-v3-track { min-height:56%; border:2px solid #b36a0e !important; border-radius:8px !important; background:linear-gradient(#ffd05a,#e99a18) !important; color:#4b2e0d !important; box-shadow:0 3px 0 #8c4b09 !important; font:900 clamp(11px,1.05vw,19px)/1 Georgia,serif !important; }
.orgw-tasks-v3-premium-lock,.orgw-tasks-v3-empty,.orgw-tasks-v3-complete { margin:.8% 0; padding:1.3%; border:1px solid #c59a56; border-radius:8px; background:rgba(246,226,181,.86); text-align:center; }
.orgw-tasks-v3-premium-lock { display:grid; grid-template-columns:1fr auto; gap:1%; align-items:center; text-align:left; }
.orgw-tasks-v3-premium-lock strong,.orgw-tasks-v3-premium-lock span { display:block; }
.orgw-tasks-v3-premium-lock button { grid-column:2; grid-row:1/3; background:linear-gradient(#7fa936,#4d751c) !important; color:#fff5c9 !important; }
.orgw-tasks-v3 .is-close-top { left:79.0%; top:7.7%; width:5.4%; height:8.4%; border-radius:50% !important; }
.orgw-tasks-v3 .is-open-pass { left:32.6%; top:88.5%; width:24.7%; height:9.1%; }
.orgw-tasks-v3 .is-close-bottom { left:59.0%; top:88.5%; width:13.1%; height:9.1%; }

/* Exact Harvest Pass template: only live status and rewards occupy blank centre. */
.orgw-hp-v3 { position:absolute; inset:0; overflow:hidden; color:#f4dfb5; font-family:Georgia,'Times New Roman',serif; }
.orgw-hp-v3-status { position:absolute; z-index:4; left:16.0%; top:11.7%; width:48.7%; height:10.2%; display:grid; grid-template-columns:9.5% 1fr; gap:2%; align-items:center; padding:.4% .7%; color:#f3ddb2; }
.orgw-hp-v3-level-badge { display:grid; place-items:center; aspect-ratio:1; border:2px solid #d7ae54; border-radius:22%; background:linear-gradient(#78963c,#385d1e); color:#fff3b3; font:900 clamp(18px,2.2vw,40px)/1 Georgia,serif; box-shadow:0 3px 8px #0007; }
.orgw-hp-v3-status strong { display:block; font-size:clamp(12px,1.25vw,23px); color:var(--orgw-harvest-title-color,#f1d9a8); }
.orgw-hp-v3-status small { display:block; margin-top:.25em; font-size:clamp(8px,.68vw,13px); color:var(--orgw-harvest-description-color,#d9bd89); }
.orgw-hp-v3-progress { height:clamp(13px,1.6vh,22px); margin-top:.35em; border:1px solid #b8893e; border-radius:999px; background:#20170f; overflow:hidden; box-shadow:inset 0 1px 4px #000a; }
.orgw-hp-v3-progress i { display:block; height:100%; background:linear-gradient(#ffc64a,#df8d12); }
.orgw-hp-v3-scroll { position:absolute; z-index:3; left:15.3%; top:23.2%; width:79.5%; height:49.4%; overflow-x:auto; overflow-y:hidden; scrollbar-width:thin; scrollbar-color:#b47d2b rgba(0,0,0,.22); scroll-snap-type:x proximity; }
.orgw-hp-v3-grid { display:grid; grid-auto-flow:column; grid-auto-columns:clamp(118px,9.2vw,162px); grid-template-rows:7% 45% 45%; gap:1.4%; align-items:stretch; height:100%; min-width:max-content; padding:1% 1.2% 2%; }
.orgw-hp-v3-column { display:grid; grid-template-rows:7% 45% 45%; gap:1.5%; min-width:0; scroll-snap-align:center; }
.orgw-hp-v3-level { display:grid; place-items:center; justify-self:center; min-width:2.1em; height:100%; padding:0 .35em; transform:translateY(-6%); background:linear-gradient(#285a7e,#16364f); border:1px solid #78a8c7; clip-path:polygon(50% 0,100% 25%,85% 100%,15% 100%,0 25%); color:#fff0bd; font:900 clamp(9px,.78vw,15px)/1 Georgia,serif; }
.orgw-hp-v3-level.is-current { background:linear-gradient(#9c6a20,#5d3811); border-color:#f4c85d; }
.orgw-hp-v3-card { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3%; min-width:0; padding:7% 5% 8%; border:2px solid !important; border-radius:8px !important; color:#fff0c4 !important; text-align:center; overflow:hidden; box-shadow:inset 0 0 0 2px rgba(255,255,255,.05),0 3px 8px #0007 !important; }
.orgw-hp-v3-card.is-free { border-color:#5e93b8 !important; background:linear-gradient(#1e577b,#0c2d47) !important; }
.orgw-hp-v3-card.is-premium { border-color:#c18b34 !important; background:linear-gradient(#80581f,#432a0d) !important; }
.orgw-hp-v3-card.is-current { border-color:#ffd75d !important; box-shadow:0 0 0 2px #ffcb3e,0 0 20px #ffd24eaa,inset 0 0 16px #ffd35b33 !important; }
.orgw-hp-v3-card.is-claimed { filter:saturate(.68) brightness(.88); }
.orgw-hp-v3-card.is-locked { opacity:.84; }
.orgw-hp-v3-card-icon { display:grid; place-items:center; width:68%; height:50%; font-size:clamp(24px,3vw,52px); }
.orgw-hp-v3-card-icon img { width:100%; height:100%; object-fit:contain; }
.orgw-hp-v3-card strong { display:block; max-width:100%; font-size:clamp(9px,.79vw,15px); line-height:1.08; color:inherit; }
.orgw-hp-v3-state { position:absolute; right:4%; top:3%; min-width:1.35em; min-height:1.35em; display:grid; place-items:center; border-radius:999px; background:#19240fdd; color:#dfff70; font-size:clamp(8px,.65vw,12px); }
.orgw-hp-v3-premium-active { position:absolute; z-index:5; left:3.5%; top:62.2%; width:9.7%; text-align:center; color:#e8ffb4; font:900 clamp(8px,.75vw,14px)/1.1 Georgia,serif; }
.orgw-hp-v3 .is-close { left:93.0%; top:1.5%; width:5.4%; height:8.2%; border-radius:50% !important; }
.orgw-hp-v3 .is-daily { left:68.0%; top:12.3%; width:12.8%; height:8.4%; }
.orgw-hp-v3 .is-claim { left:81.5%; top:12.3%; width:13.0%; height:8.4%; }
.orgw-hp-v3 .is-premium-hit { left:3.2%; top:60.1%; width:10.2%; height:8.6%; }
.orgw-hp-v3 .is-goals { left:20.0%; top:84.7%; width:11.8%; height:6.8%; }
.orgw-hp-v3 .is-missions { left:45.4%; top:84.7%; width:11.8%; height:6.8%; }
.orgw-hp-v3 .is-overflow { left:70.5%; top:84.7%; width:12.5%; height:6.8%; }

@media (max-width:900px) {
  .orgw-tasks-v3-row { min-height:62px; }
  .orgw-tasks-v3-scroll { padding-right:1.4%; }
  .orgw-hp-v3-grid { grid-auto-columns:clamp(105px,11.5vw,145px); }
}
/* ORG World 0.1.7 reward-column correction. */
.orgw-hp-v3-grid { display:flex !important; flex-flow:row nowrap !important; gap:1.4% !important; height:100% !important; min-width:max-content !important; padding:1% 1.2% 2% !important; }
.orgw-hp-v3-column { flex:0 0 clamp(118px,9.2vw,162px) !important; height:100% !important; display:grid !important; grid-template-rows:7% 45% 45% !important; gap:1.5% !important; }

/* ========================================================================
   ORG World 0.1.8 — larger configurable popup typography and in-game confirms
   ======================================================================== */
.orgw-tasks-v3-meta {
  font-size: var(--orgw-tasks-intro, 17px) !important;
  color: var(--orgw-tasks-intro-color, #4b2d18) !important;
}
.orgw-tasks-v3-meta button {
  font-size: var(--orgw-tasks-button, 20px) !important;
  color: var(--orgw-tasks-button-color, #4a2b0b) !important;
}
.orgw-tasks-v3-scroll h3 {
  font-size: var(--orgw-tasks-section_title, 22px) !important;
  color: var(--orgw-tasks-section_title-color, #4b2d18) !important;
}
.orgw-tasks-v3-copy strong {
  font-size: var(--orgw-tasks-task_title, 24px) !important;
  color: var(--orgw-tasks-task_title-color, #4b2d18) !important;
}
.orgw-tasks-v3-copy p {
  font-size: var(--orgw-tasks-task_description, 16px) !important;
  color: var(--orgw-tasks-task_description-color, #5b3a22) !important;
}
.orgw-tasks-v3-progress b {
  font-size: var(--orgw-tasks-progress, 15px) !important;
  color: var(--orgw-tasks-progress-color, #3e321c) !important;
}
.orgw-tasks-v3-reward span {
  font-size: var(--orgw-tasks-reward_amount, 20px) !important;
  color: var(--orgw-tasks-reward_amount-color, #4b3218) !important;
}
.orgw-tasks-v3-reward small,
.orgw-tasks-v3-reward em {
  font-size: var(--orgw-tasks-reward_detail, 13px) !important;
  color: var(--orgw-tasks-reward_detail-color, #5b3a22) !important;
}
.orgw-tasks-v3-track,
.orgw-tasks-v3-premium-lock button {
  font-size: var(--orgw-tasks-button, 20px) !important;
  color: var(--orgw-tasks-button-color, #4a2b0b) !important;
}
.orgw-tasks-v3-premium-lock strong,
.orgw-tasks-v3-empty,
.orgw-tasks-v3-complete {
  font-size: var(--orgw-tasks-section_title, 22px) !important;
  color: var(--orgw-tasks-section_title-color, #4b2d18) !important;
}
.orgw-tasks-v3-premium-lock span {
  font-size: var(--orgw-tasks-section_body, 15px) !important;
  color: var(--orgw-tasks-section_body-color, #5b3a22) !important;
}
.orgw-tasks-v3-feedback strong {
  font-size: var(--orgw-tasks-feedback_title, 18px) !important;
  color: var(--orgw-tasks-feedback_title-color, #4b2d18) !important;
}
.orgw-tasks-v3-feedback span {
  font-size: var(--orgw-tasks-feedback_body, 15px) !important;
  color: var(--orgw-tasks-feedback_body-color, #5b3a22) !important;
}

.orgw-hp-v3-level-badge {
  font-size: var(--orgw-harvest-level_badge, 30px) !important;
  color: var(--orgw-harvest-level_badge-color, #fff3b3) !important;
}
.orgw-hp-v3-status strong {
  font-size: var(--orgw-harvest-progress_title, 24px) !important;
  color: var(--orgw-harvest-progress_title-color, #fff1bd) !important;
}
.orgw-hp-v3-status small {
  font-size: var(--orgw-harvest-progress_body, 16px) !important;
  color: var(--orgw-harvest-progress_body-color, #ffe7a5) !important;
}
.orgw-hp-v3-level {
  font-size: var(--orgw-harvest-reward_level, 18px) !important;
  color: var(--orgw-harvest-reward_level-color, #fff0bd) !important;
}
.orgw-hp-v3-card strong {
  font-size: var(--orgw-harvest-reward_title, 18px) !important;
  color: var(--orgw-harvest-reward_title-color, #fff0c4) !important;
}
.orgw-hp-v3-state {
  font-size: var(--orgw-harvest-reward_state, 14px) !important;
  color: var(--orgw-harvest-reward_state-color, #dfff70) !important;
}
.orgw-hp-v3-premium-active {
  font-size: var(--orgw-harvest-premium_status, 15px) !important;
  color: var(--orgw-harvest-premium_status-color, #e8ffb4) !important;
}

.orgw-confirm-layer {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: center;
  padding: 4%;
  font-family: Georgia, 'Times New Roman', serif;
}
.orgw-confirm-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(4, 10, 14, .74);
  backdrop-filter: blur(2px);
}
.orgw-confirm-card {
  position: relative;
  width: min(760px, 72%);
  max-height: 72%;
  padding: 28px 30px 24px;
  border: 3px solid #d7a447;
  border-radius: 22px;
  background: linear-gradient(180deg, #fff7df, #efd7a7);
  color: #4b2d18;
  box-shadow: 0 28px 80px rgba(0,0,0,.62), inset 0 0 0 2px rgba(255,255,255,.62);
  text-align: left;
}
.orgw-confirm-card header strong {
  display: block;
  font-size: clamp(24px, 2.4vw, 38px);
  line-height: 1.05;
}
.orgw-confirm-card p {
  margin: 18px 0 26px;
  font-size: clamp(17px, 1.55vw, 25px);
  line-height: 1.35;
}
.orgw-confirm-card footer {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}
[data-org-world] .orgw-confirm-card button {
  min-width: 170px;
  padding: 14px 22px;
  border: 2px solid #a66a1d !important;
  border-radius: 13px !important;
  color: #4a2b0b !important;
  font: 900 clamp(16px, 1.4vw, 22px)/1 Georgia, serif !important;
  cursor: pointer;
}
[data-org-world] .orgw-confirm-cancel {
  background: linear-gradient(#fff7e2, #e5c891) !important;
}
[data-org-world] .orgw-confirm-accept {
  background: linear-gradient(#ffd261, #e99b1c) !important;
  box-shadow: 0 3px 0 #8d4e0c !important;
}
[data-org-world] .orgw-confirm-card.is-danger .orgw-confirm-accept {
  background: linear-gradient(#d87343, #a43a1e) !important;
  color: #fff6dc !important;
}
@media (max-width: 900px) {
  .orgw-confirm-card { width: min(860px, 88%); padding: 22px 24px 20px; }
  .orgw-confirm-card footer { gap: 12px; }
  [data-org-world] .orgw-confirm-card button { min-width: 145px; }
}


/* ========================================================================
   ORG World 0.1.9 — readable Farmhouse Kitchen, reliable pen animals and
   a functional full-screen ORG X & O interface.
   ======================================================================== */
.orgw-modal.is-farmhouse-kitchen { padding:2.2% !important; }
.orgw-modal.is-farmhouse-kitchen .orgw-modal-card {
  width:94% !important; height:94% !important; max-width:none !important; max-height:none !important;
  padding:0 !important; overflow:hidden !important; border:3px solid #b88948 !important;
  border-radius:28px !important; background:linear-gradient(180deg,#fffaf0,#f3dfb7) !important;
  box-shadow:0 30px 90px rgba(10,7,2,.62) !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-modal-card > .orgw-modal-close {
  z-index:40; right:1.2%; top:2%; width:58px; height:58px; border-radius:50%;
  display:grid; place-items:center; color:#62350e; background:linear-gradient(#fff9e9,#e9c782);
  border:3px solid #87551e; font-size:36px; line-height:1; box-shadow:0 5px 12px #0004;
}
.orgw-modal.is-farmhouse-kitchen [data-modal-content] { height:100%; overflow:hidden; }
.orgw-farmhouse-kitchen { position:relative; height:100%; display:grid; grid-template-rows:auto minmax(0,1fr) auto; color:#4c2d12; }
.orgw-farmhouse-kitchen-header { position:relative; min-height:150px; display:grid; place-items:center; padding:10px 90px 4px; text-align:center; }
.orgw-farmhouse-kitchen-header img { width:min(82%,1500px); height:112px; object-fit:contain; filter:drop-shadow(0 9px 8px #4b2a1438); }
.orgw-farmhouse-kitchen-header p { margin:-10px 0 5px; padding:7px 30px; border-radius:999px; background:#4b772f; color:#fffbe9; font-size:clamp(18px,1.35vw,28px); font-weight:900; }
.orgw-farmhouse-kitchen-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:10px 2.2% 28px; scrollbar-width:thin; scrollbar-color:#9e6a2b #f2dfba; }
.orgw-farmhouse-section { margin:0 0 22px; padding:22px; border:2px solid #d4aa67; border-radius:24px; background:rgba(255,250,237,.94); box-shadow:0 10px 22px #6b3e1417,inset 0 1px #fff; }
.orgw-farmhouse-section-heading { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:16px; }
.orgw-farmhouse-section-heading span { display:block; font-family:Georgia,serif; font-size:clamp(28px,2vw,42px); font-weight:900; color:#5b3514; }
.orgw-farmhouse-section-heading h3 { margin:4px 0 0; font-size:clamp(17px,1.15vw,24px); font-weight:700; color:#76542d; }
.orgw-farmhouse-section-heading > b { padding:10px 18px; border-radius:999px; background:#f7e6c6; border:1px solid #d4aa67; font-size:18px; }
[data-org-world] .orgw-farmhouse-section-heading button { flex:0 0 auto; padding:14px 24px !important; border-radius:16px !important; background:linear-gradient(#759e3e,#3d681f) !important; color:white !important; font-size:20px !important; font-weight:900 !important; }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0; }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-card { min-height:250px; padding:20px; grid-template-columns:180px minmax(0,1fr); border:2px solid #dfbe87; border-radius:22px; }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-card > img { height:170px; }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy strong { font-size:clamp(25px,1.7vw,36px); }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy span { font-size:clamp(17px,1.08vw,23px); }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy small { font-size:clamp(14px,.9vw,19px); line-height:1.45; }
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-actions button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card button,
.orgw-farmhouse-potion-preview button { min-height:54px; font-size:20px !important; font-weight:900 !important; }
.orgw-farmhouse-potion-preview { display:grid; grid-template-columns:170px minmax(0,1fr) auto; gap:20px; align-items:center; padding:18px; border-radius:20px; background:linear-gradient(135deg,#fff7e5,#f0d7ab); border:1px solid #d5ad70; }
.orgw-farmhouse-potion-preview img { width:160px; height:140px; object-fit:contain; }
.orgw-farmhouse-potion-preview strong,.orgw-farmhouse-potion-preview span { display:block; }
.orgw-farmhouse-potion-preview strong { font-size:28px; }
.orgw-farmhouse-potion-preview span { margin-top:8px; font-size:18px; color:#6d4d2b; }
.orgw-farmhouse-animal-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.orgw-farmhouse-animal-card { display:grid; grid-template-rows:150px auto auto auto auto; gap:7px; place-items:center; padding:16px; text-align:center; border:2px solid #dfbe87; border-radius:20px; background:#fff9eb; }
.orgw-farmhouse-animal-card img { width:100%; height:150px; object-fit:contain; filter:drop-shadow(0 8px 6px #4c2b172e); }
.orgw-farmhouse-animal-card strong { font-size:26px; }
.orgw-farmhouse-animal-card span { font-size:16px; color:#76542d; }
.orgw-farmhouse-animal-card b { font-size:20px; }
.orgw-farmhouse-animal-card.is-locked { opacity:.55; filter:grayscale(.35); }
.orgw-farmhouse-kitchen-footer { padding:13px 20px; text-align:center; font:800 clamp(18px,1.3vw,27px)/1.2 Georgia,serif; color:#704b25; border-top:1px solid #d3aa6f; background:#f7e4bd; }

/* Use a dependable, visible DOM animal sprite in front of the baked pen. */
.orgw-shared-pen-zone .orgw-pen-canvas { display:none !important; }
.orgw-pen-animal-sprite { position:absolute; z-index:14; left:calc(50% + var(--orgw-animal-x,0%)); bottom:calc(7% - var(--orgw-animal-y,0%)); width:calc(72% * var(--orgw-animal-scale,1)); height:68%; object-fit:contain; object-position:center bottom; transform:translateX(-50%); filter:drop-shadow(0 10px 8px rgba(42,25,8,.35)); pointer-events:none; animation:orgw-pen-animal-idle 2.5s ease-in-out infinite; }
.orgw-pen-animal-sprite[data-animal="chicken"],.orgw-pen-animal-sprite[data-animal="duck"] { width:calc(56% * var(--orgw-animal-scale,1)); height:54%; bottom:12%; }
.orgw-pen-animal-sprite[hidden] { display:none !important; }
@keyframes orgw-pen-animal-idle { 0%,100%{transform:translateX(-50%) translateY(0) rotate(-1deg)} 50%{transform:translateX(-50%) translateY(-5px) rotate(1deg)} }

/* Full-screen, readable and actually clickable ORG X & O. */
.orgw-modal.is-gambler-game { padding:1.2% !important; }
.orgw-modal.is-gambler-game .orgw-modal-card { width:97% !important; height:97% !important; }
.orgw-gambler-fullscreen { position:relative; width:100%; height:100%; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; border:4px solid #8a5b25; border-radius:24px; background:linear-gradient(135deg,#f8e9c6,#d7b171); color:#3c250f; box-shadow:inset 0 0 80px #633a1533; }
.orgw-gambler-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 28px; background:linear-gradient(#805124,#4b2c12); color:#fff3ce; border-bottom:4px solid #c89341; }
.orgw-gambler-header span { text-transform:uppercase; letter-spacing:.15em; font-weight:900; color:#efc96f; }
.orgw-gambler-header h2 { margin:2px 0; color:white; font:900 clamp(38px,3.6vw,72px)/1 Georgia,serif; }
.orgw-gambler-header p { margin:4px 0 0; color:#f6e3ba; font-size:clamp(17px,1.1vw,23px); }
[data-org-world] .orgw-gambler-header button { width:68px; height:68px; border-radius:50% !important; background:#a33d22 !important; color:white !important; border:4px solid #e3ae55 !important; font-size:42px !important; line-height:1 !important; }
.orgw-gambler-layout { min-height:0; display:grid; grid-template-columns:minmax(170px,16%) minmax(460px,1fr) minmax(280px,24%); gap:22px; padding:22px; }
.orgw-gambler-character,.orgw-gambler-controls,.orgw-gambler-board-panel { min-height:0; border:2px solid #c18b42; border-radius:20px; background:rgba(255,248,225,.9); box-shadow:0 10px 24px #46270d24; }
.orgw-gambler-character { display:grid; align-content:center; justify-items:center; gap:12px; padding:16px; }
.orgw-gambler-character img { width:100%; max-height:62vh; object-fit:contain; }
.orgw-gambler-character strong { font-size:28px; }
.orgw-gambler-board-panel { display:grid; grid-template-rows:auto minmax(0,1fr); gap:16px; padding:18px; }
.orgw-gambler-fullscreen .orgw-gambler-status { position:relative; left:auto; top:auto; width:auto; min-height:72px; padding:12px 18px; display:flex; align-items:center; justify-content:center; text-align:center; font-size:clamp(19px,1.25vw,27px); border-radius:14px; background:#fff5d7; color:#4b3015; }
.orgw-gambler-fullscreen .orgw-tic-board { position:relative; left:auto; top:auto; width:min(70vh,100%); height:auto; aspect-ratio:1; place-self:center; gap:10px; padding:12px; border-radius:22px; background:#6b421d; box-shadow:inset 0 0 0 5px #d4a24e,0 15px 35px #2815063d; }
[data-org-world] .orgw-gambler-fullscreen button.orgw-tic-cell { border:4px solid #9a682d !important; border-radius:16px !important; background:linear-gradient(#fff1c5,#d8aa62) !important; color:#4b2c13 !important; box-shadow:inset 0 2px #fff8,0 4px 7px #2815064d !important; cursor:pointer !important; }
[data-org-world] .orgw-gambler-fullscreen button.orgw-tic-cell:not(:disabled):hover { background:linear-gradient(#fff9d9,#eabf76) !important; transform:scale(1.025); }
.orgw-gambler-fullscreen .orgw-tic-cell span { font-size:clamp(58px,8vh,118px); font-weight:1000; line-height:1; }
.orgw-gambler-controls { display:flex; flex-direction:column; gap:12px; padding:18px; overflow-y:auto; }
.orgw-gambler-portrait { width:100%; height:min(28vh,240px); object-fit:contain; }
.orgw-gambler-controls h3 { margin:0; font-size:28px; text-align:center; }
.orgw-gambler-fullscreen .orgw-gambler-difficulties { position:relative; left:auto; top:auto; width:auto; display:grid; gap:10px; }
[data-org-world] .orgw-gambler-fullscreen button.orgw-gambler-difficulty { position:relative; width:100%; height:auto; min-height:72px; display:grid; grid-template-columns:minmax(0,1fr); align-items:center; justify-items:start; gap:4px; padding:11px 16px !important; border:2px solid #a67533 !important; border-radius:13px !important; background:#f8e7bd !important; color:#4a2d12 !important; text-align:left; }
.orgw-gambler-difficulty strong { font-size:22px; }
.orgw-gambler-difficulty span { font-size:15px; }
[data-org-world] .orgw-gambler-fullscreen button.orgw-gambler-difficulty.is-selected { background:#d9efb6 !important; border-color:#5c812f !important; }
[data-org-world] .orgw-gambler-play,[data-org-world] .orgw-gambler-rules-toggle { min-height:60px; border-radius:14px !important; font-size:22px !important; font-weight:900 !important; }
[data-org-world] .orgw-gambler-play { background:linear-gradient(#78a541,#416d22) !important; color:white !important; }
.orgw-gambler-fullscreen .orgw-gambler-rules { position:absolute; z-index:30; inset:12% 16%; padding:35px; border:4px solid #9a682d; border-radius:22px; background:#fff5d8; color:#4b3015; font-size:22px; box-shadow:0 30px 80px #0009; }
.orgw-gambler-fullscreen .orgw-gambler-rules strong { font-size:36px; }
.orgw-gambler-fullscreen .orgw-gambler-rules p { margin:15px 0 24px; line-height:1.55; }
@media (max-aspect-ratio: 16/9) {
  .orgw-gambler-layout { grid-template-columns:14% minmax(360px,1fr) 25%; gap:12px; padding:12px; }
  .orgw-gambler-character strong { font-size:20px; }
  .orgw-gambler-controls { padding:12px; gap:8px; }
}
.orgw-gambler-fullscreen .orgw-gambler-difficulty > span,
.orgw-gambler-fullscreen .orgw-gambler-difficulty.is-complete > span {
  position:static !important; right:auto !important; top:auto !important; display:block !important;
  width:auto !important; height:auto !important; aspect-ratio:auto !important; border-radius:0 !important;
  background:transparent !important; color:#6b4927 !important; font-size:15px !important;
  text-shadow:none !important; box-shadow:none !important; opacity:1 !important; transform:none !important;
}


/* ========================================================================
   ORG World 0.1.12 — cleaner field panel, readable task board, visible feedback
   ======================================================================== */
.orgw-visitor-panel .orgw-main-org-sprite { display:none !important; }
.orgw-visitor-panel img { filter: drop-shadow(0 10px 16px rgba(44,26,11,.22)); }
.orgw-visitor-panel.is-blinking img { animation: orgwQuestCharacterBlink 1.15s ease-in-out infinite !important; }

.orgw-field-panel-v2 {
  display: grid;
  gap: 18px;
}
.orgw-field-showcase {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  border: 2px solid #e3cfaf;
  border-radius: 22px;
  background: linear-gradient(180deg, #fffaf0, #f7ebd7);
}
.orgw-field-showcase-art {
  min-height: 160px;
  border-radius: 18px;
  background: radial-gradient(circle at 50% 45%, rgba(255,255,255,.95), rgba(239,221,189,.74));
  display: grid;
  place-items: center;
  padding: 10px;
}
.orgw-field-showcase-art img {
  max-width: 100%;
  max-height: 180px;
  object-fit: contain;
  filter: drop-shadow(0 10px 18px rgba(63,40,16,.18));
}
.orgw-field-showcase-copy h2 {
  margin: 4px 0 8px;
  font-size: clamp(28px, 2.4vw, 40px);
  color: #5a3417;
}
.orgw-field-showcase-copy p {
  margin: 0;
  font-size: clamp(15px, 1.15vw, 20px);
  color: #6b4725;
}
.orgw-field-showcase-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}
.orgw-field-showcase-badges span,
.orgw-field-panel-badges span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 14px;
  background: linear-gradient(180deg, #fff2d0, #ecd6a6);
  border: 1px solid #dfbf82;
  color: #5b3618;
  font: 800 15px/1.1 Georgia, serif;
}
.orgw-field-panel-section-head {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
}
.orgw-field-panel-section-head h3,
.orgw-field-panel-section h3 {
  margin: 0;
  font-size: clamp(24px, 1.9vw, 34px);
  color: #5a3417;
}
.orgw-field-panel-section-head p {
  margin: 0;
  font-size: clamp(14px, 1vw, 18px);
  color: #6b4725;
}
.orgw-crop-choice-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.orgw-crop-choice-card {
  align-items: flex-start !important;
  gap: 8px !important;
  min-height: 210px;
  padding: 16px 16px 14px !important;
  border-radius: 20px !important;
  border: 2px solid #dfc397 !important;
  background: linear-gradient(180deg, #fffaf0, #f5ead8) !important;
}
.orgw-crop-choice-card .orgw-crop-choice-hero {
  width: 100%;
  min-height: 92px;
  border-radius: 16px;
  background: radial-gradient(circle at 50% 35%, rgba(255,255,255,.96), rgba(236,217,179,.7));
  display: grid;
  place-items: center;
  margin-bottom: 4px;
}
.orgw-crop-choice-card img {
  width: 96px;
  height: 96px;
  object-fit: contain;
}
.orgw-crop-choice-card strong {
  font-size: clamp(22px, 1.55vw, 30px);
  color: #5a3315;
}
.orgw-crop-choice-card span,
.orgw-crop-choice-card small {
  font-size: clamp(13px, .94vw, 18px);
  line-height: 1.28;
  color: #6a4625;
}
.orgw-crop-choice-card b { color: #5a3315; }
.orgw-crop-choice-card.is-locked { opacity: .62; }

.orgw-crop-choice-strip-wrap {
  overflow-x: auto;
  overflow-y: visible;
  padding-bottom: 4px;
}
.orgw-crop-choice-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}
.orgw-crop-choice-card.is-selected {
  border-color: #6f9938 !important;
  box-shadow: 0 0 0 3px rgba(111,153,56,.16), 0 14px 26px rgba(70,48,18,.12) !important;
}
.orgw-crop-choice-card .orgw-crop-choice-stats {
  width: 100%;
  display: grid;
  gap: 6px;
  margin-top: 2px;
}
.orgw-crop-choice-card .orgw-crop-choice-stats span {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: clamp(12px, .92vw, 17px);
}
.orgw-crop-choice-card .orgw-crop-choice-stats b {
  font-weight: 800;
  color: #76512a;
}
.orgw-crop-choice-card .orgw-crop-choice-stats em {
  font-style: normal;
  font-weight: 900;
  color: #5a3315;
}
.orgw-field-selection-summary {
  display: grid;
  grid-template-columns: 118px minmax(0,1fr) repeat(3, minmax(110px, 1fr));
  gap: 16px;
  align-items: center;
  padding: 16px 18px;
  border: 2px solid #e3cfaf;
  border-radius: 20px;
  background: linear-gradient(180deg, #f8efde, #f2e3ca);
}
.orgw-field-selection-hero {
  min-height: 92px;
  display: grid;
  place-items: center;
}
.orgw-field-selection-hero img {
  width: 90px;
  height: 90px;
  object-fit: contain;
}
.orgw-field-selection-copy { display: grid; gap: 4px; }
.orgw-field-selection-copy span {
  color: #8b6840;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.orgw-field-selection-copy strong {
  font-size: clamp(30px, 2vw, 40px);
  color: #5a3315;
}
.orgw-field-selection-copy p {
  margin: 0;
  font-size: clamp(14px, .96vw, 18px);
  color: #6a4625;
}
.orgw-field-selection-metrics {
  display: contents;
}
.orgw-field-selection-metrics span {
  display: grid;
  gap: 4px;
  justify-items: center;
  padding: 10px 12px;
  border-left: 1px solid #dec9aa;
}
.orgw-field-selection-metrics b {
  font-size: 14px;
  color: #8b6840;
}
.orgw-field-selection-metrics em {
  font-style: normal;
  font-weight: 900;
  font-size: clamp(22px, 1.45vw, 31px);
  color: #5a3315;
}
.orgw-field-panel-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
}
.orgw-field-panel-actions > * { min-width: 240px; }
.orgw-field-panel-footnote {
  margin: 4px 0 0;
  text-align: center;
  color: #785532;
  font-size: clamp(13px, .92vw, 17px);
}
.orgw-market-template-stage { position: relative; }
.orgw-market-feedback-floating {
  position: absolute;
  top: 18%;
  left: 50%;
  transform: translateX(-50%);
  width: min(62%, 720px);
  z-index: 15;
  box-shadow: 0 16px 30px rgba(28,14,6,.24);
}

@media (max-width: 980px) {
  .orgw-field-showcase { grid-template-columns: 1fr; }
  .orgw-crop-choice-strip {
    grid-auto-flow: column;
    grid-auto-columns: minmax(230px, 1fr);
    grid-template-columns: none;
  }
  .orgw-field-selection-summary {
    grid-template-columns: 92px minmax(0,1fr);
  }
  .orgw-field-selection-metrics {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 0;
  }
  .orgw-field-selection-metrics span:first-child { border-left: 0; }
  .orgw-field-panel-actions { flex-wrap: wrap; }
  .orgw-market-feedback-floating { top: 15%; width: 78%; }
}
@media (max-width: 900px) {
  .orgw-world-board-preview { width: 80%; gap: 4px; }
  .orgw-world-board-preview strong { font-size: clamp(.72rem, 1.9vw, .98rem); }
  .orgw-world-board-preview small { font-size: clamp(.52rem, 1.3vw, .72rem); }
}

/* ========================================================================
   ORG World 0.1.13 — scene readability and natural world proportions
   ======================================================================== */

/* Large board retained; text now uses the available parchment area. */
.orgw-world-board-preview {
  top: 50%;
  width: 72%;
  gap: 8px;
  opacity: 1;
}
.orgw-world-board-preview strong {
  font-size: clamp(26px, 1.7vw, 34px) !important;
  line-height: 1.05;
  letter-spacing: .01em;
  font-weight: 900;
}
.orgw-world-board-preview small {
  display: -webkit-box;
  width: 100%;
  max-width: 100%;
  font-size: clamp(16px, 1.02vw, 21px) !important;
  line-height: 1.18;
  font-weight: 800;
  text-align: center;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* Compact, high-contrast HUD. */
.orgw-topbar {
  gap: 8px;
}
.orgw-stat {
  min-width: 0;
  min-height: 0;
  padding: 7px 12px;
  border-width: 1px;
  border-radius: 13px;
  gap: 2px;
  box-shadow: 0 7px 15px rgba(72,47,20,.13);
}
.orgw-stat b {
  font-size: 13px;
  letter-spacing: .045em;
  line-height: 1;
}
.orgw-stat span {
  font-size: 22px;
  line-height: 1.05;
}
.orgw-game:not(.is-layout-editor) .orgw-utility-buttons {
  min-height: 0 !important;
  height: auto !important;
  align-content: start;
  align-items: start;
  grid-template-columns: repeat(2, minmax(0,1fr));
  grid-auto-rows: minmax(42px, auto);
  gap: 7px;
}
.orgw-game:not(.is-layout-editor) .orgw-reset-action {
  display: none !important;
}
.orgw-utility-buttons button {
  padding: 7px 10px;
  min-height: 42px;
  max-height: 54px;
  overflow: hidden;
  border-radius: 12px;
  font-size: clamp(13px, .82vw, 16px);
  line-height: 1.08;
}
.orgw-needs-button small {
  margin-top: 2px;
  font-size: .78em;
}

/* Crops follow field perspective and remain grounded behind front fences. */
.orgw-world-crops {
  inset: 1% 8% 14%;
  z-index: 3;
}
.orgw-world-crop {
  width: 24%;
  height: 42%;
  object-fit: contain;
  object-position: center bottom;
  transform: translate(-50%, -92%) rotate(var(--orgw-crop-rotate,0deg)) scale(var(--orgw-crop-depth,1)) scale(var(--orgw-field-art-scale,1));
  transform-origin: 50% 100%;
  filter: drop-shadow(0 3px 2px rgba(55,34,11,.22));
}
.orgw-world-plot.crop-apple .orgw-world-crop:not(.cluster-5) {
  display: none;
}
.orgw-world-plot.crop-apple .orgw-world-crop.cluster-5 {
  width: 56%;
  height: 72%;
  top: 76% !important;
  --orgw-crop-depth: .96 !important;
}
.orgw-world-field-foreground {
  display: block !important;
  z-index: 7;
}
.orgw-world-plot .orgw-plot-main {
  z-index: 8;
}

/* Small clear action bubbles replace oversized produce icons. */
[data-org-world] button.orgw-status-action,
[data-org-world] button.orgw-status-action:hover,
[data-org-world] button.orgw-status-action:focus,
[data-org-world] button.orgw-status-action:focus-visible,
[data-org-world] button.orgw-status-action:active {
  width: 64px;
  padding: 7px !important;
  border: 2px solid #e0ad4f !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg,#fff6d8,#e8c47a) !important;
  box-shadow: 0 7px 15px rgba(72,42,12,.25) !important;
}
.orgw-world-plot .orgw-status-action {
  top: 45%;
  z-index: 10;
}
.orgw-status-action img {
  width: 100%;
  height: 100%;
}
.orgw-status-action.is-ready {
  width: 68px !important;
  height: 68px !important;
}
.orgw-status-action.is-ready img {
  width: 42px;
  height: 42px;
  margin: -2px auto 0;
}
.orgw-status-action.is-ready span {
  position: absolute;
  left: 50%;
  bottom: -20px;
  transform: translateX(-50%);
  padding: 3px 7px;
  border-radius: 8px;
  background: rgba(80,47,20,.94);
  color: #fff3c7;
  font: 800 11px/1 Georgia,serif;
  white-space: nowrap;
}

/* Field labels now match the wooden fantasy UI instead of white browser pills. */
.orgw-world-plot .orgw-plot-label {
  top: 82%;
  min-width: 88px;
  max-width: 94%;
  padding: 8px 17px;
  border: 2px solid #d6a34d;
  border-radius: 10px;
  background: linear-gradient(180deg,#946038,#603719);
  color: #fff1c0;
  box-shadow: inset 0 1px rgba(255,255,255,.25), 0 7px 12px rgba(55,31,10,.28);
  font: 900 16px/1.05 Georgia,serif;
  letter-spacing: .02em;
  text-shadow: 0 1px 1px #301608;
  pointer-events: auto;
  backdrop-filter: none;
}
.orgw-world-plot .orgw-plot-label::before,
.orgw-world-plot .orgw-plot-label::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 5px;
  height: 5px;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #e4b85f;
  box-shadow: inset 0 1px #fff7b8, 0 1px 1px #351b0b;
}
.orgw-world-plot .orgw-plot-label::before { left: 6px; }
.orgw-world-plot .orgw-plot-label::after { right: 6px; }
.orgw-world-plot .orgw-plot-label small {
  top: calc(100% + 9px);
  background: rgba(69,39,17,.96);
  border-color: #d7a753;
  color: #fff1c4;
  font-size: 13px;
}

/* Animals sit inside the shared pen and are occluded by the front fence. */
.orgw-pen-animal-sprite {
  z-index: 84;
  bottom: calc(8% - var(--orgw-animal-y,0%));
  width: calc(62% * var(--orgw-animal-scale,1));
  height: 58%;
}
.orgw-pen-animal-sprite[data-animal="chicken"],
.orgw-pen-animal-sprite[data-animal="duck"] {
  width: calc(52% * var(--orgw-animal-scale,1));
  height: 48%;
  bottom: calc(10% - var(--orgw-animal-y,0%));
}
.orgw-world-pen-foreground {
  display: block !important;
  z-index: 86;
}

/* Help text is easier to read while using less vertical space. */
.orgw-scene-note {
  padding: 5px 14px;
  border-radius: 14px;
  font-size: 17px;
  line-height: 1.15;
  font-weight: 800;
  background: rgba(255,248,233,.95);
  box-shadow: 0 7px 15px rgba(61,43,18,.14);
}
.orgw-tip-text {
  line-height: 1.18;
}

@media (max-width: 900px) {
  .orgw-world-board-preview { width: 76%; gap: 6px; }
  .orgw-world-board-preview strong { font-size: 28px !important; }
  .orgw-world-board-preview small { font-size: 17px !important; }
  .orgw-stat { padding: 6px 9px; }
  .orgw-stat b { font-size: 12px; }
  .orgw-stat span { font-size: 20px; }
  .orgw-scene-note { font-size: 16px; }
  .orgw-gambler-layout { grid-template-columns: 14% minmax(320px,1fr) 27%; gap: 10px; padding: 10px; }
}


/* ORG World 0.1.20 — approved top HUD, larger field modal, better task note, animated pen animals */
.orgw-visually-hidden {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.orgw-topbar {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px !important;
  align-items:stretch;
}
.orgw-stat {
  position:relative;
  min-width:0;
  min-height:94px;
  padding:0 18px 14px !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background-position:center;
  background-repeat:no-repeat;
  background-size:100% 100%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:0 !important;
}
.orgw-stat-coins { background-image:url('../ui/topbar/stat-coins.webp'); }
.orgw-stat-wood { background-image:url('../ui/topbar/stat-wood.webp'); }
.orgw-stat-meat { background-image:url('../ui/topbar/stat-meat.webp'); }
.orgw-stat-level { background-image:url('../ui/topbar/stat-level.webp'); }
.orgw-stat-xp { background-image:url('../ui/topbar/stat-xp.webp'); }
.orgw-stat .orgw-stat-value {
  display:block;
  width:100%;
  text-align:center;
  font-size:clamp(28px,1.65vw,40px) !important;
  line-height:1;
  font-weight:900;
  color:#3f2a14;
  text-shadow:0 1px 0 rgba(255,255,255,.78);
  letter-spacing:.01em;
}
.orgw-stat b { display:none !important; }
.orgw-game:not(.is-layout-editor) .orgw-utility-buttons {
  display:grid;
  grid-template-columns:minmax(0, 1.32fr) minmax(0, .92fr) 76px;
  grid-auto-rows:minmax(78px,auto);
  gap:12px !important;
  align-items:start;
  align-content:start;
  height:auto !important;
}
.orgw-utility-buttons button {
  position:relative;
  min-height:76px !important;
  max-height:none !important;
  padding:0 !important;
  overflow:visible !important;
  border:0 !important;
  border-radius:0 !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:100% 100% !important;
  box-shadow:none !important;
  color:transparent !important;
}
.orgw-harvest-pass-button { background-image:url('../ui/topbar/utility-harvest.webp') !important; }
.orgw-needs-button { background-image:url('../ui/topbar/utility-needs.webp') !important; }
.orgw-settings-button { background-image:url('../ui/topbar/utility-settings.webp') !important; min-height:70px !important; }
.orgw-harvest-pass-button span,
.orgw-needs-button small {
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:10px;
  min-width:54%;
  text-align:center;
  color:#f8f5df !important;
  text-shadow:0 2px 3px rgba(34,25,12,.45);
  font-weight:900;
  line-height:1;
}
.orgw-harvest-pass-button span { font-size:clamp(17px,1.1vw,23px); }
.orgw-needs-button small { font-size:clamp(14px,.92vw,19px); bottom:12px; color:#4f3719 !important; text-shadow:0 1px 0 rgba(255,255,255,.7); }
.orgw-world-board-preview {
  top:50%;
  width:66% !important;
  gap:6px !important;
}
.orgw-world-board-preview strong {
  font-size:clamp(24px,1.45vw,30px) !important;
  line-height:1.04;
}
.orgw-world-board-preview small {
  display:grid !important;
  gap:3px;
  justify-items:center;
  width:100%;
  font-size:clamp(15px,.95vw,20px) !important;
  line-height:1.15;
  font-weight:900;
  text-align:center;
  white-space:normal !important;
  -webkit-line-clamp:unset !important;
}
.orgw-task-board-line { display:block; }
.orgw-scene-note {
  padding:12px 22px !important;
  border-radius:18px !important;
  font-size:clamp(19px,1.05vw,24px) !important;
  line-height:1.24 !important;
  font-weight:900 !important;
  background:rgba(255,248,233,.97) !important;
  box-shadow:0 8px 16px rgba(61,43,18,.17) !important;
}
.orgw-tip-text { line-height:1.24 !important; }
.orgw-modal.is-field-panel { padding:1.2% !important; }
.orgw-modal.is-field-panel .orgw-modal-card {
  width:96% !important;
  height:94% !important;
  max-width:none !important;
  max-height:none !important;
  padding:20px 24px !important;
  overflow:hidden !important;
}
.orgw-modal.is-field-panel [data-modal-content] {
  height:100%;
  overflow:auto;
  padding-right:4px;
}
.orgw-field-panel-v2 { width:100%; max-width:none; }
.orgw-field-showcase { grid-template-columns:minmax(240px,320px) minmax(0,1fr); }
.orgw-crop-choice-strip { grid-template-columns:repeat(4, minmax(190px, 1fr)); }
.orgw-field-selection-summary { grid-template-columns:100px minmax(0,1fr) repeat(3,minmax(120px,1fr)); }
.orgw-field-panel-actions { margin-top:6px; }
.orgw-modal.is-settings .orgw-modal-card { width:min(720px,92vw) !important; max-height:88vh !important; }
.orgw-settings-panel { display:grid; gap:18px; }
.orgw-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.orgw-settings-card { padding:16px 18px; border:1px solid #dfc393; border-radius:18px; background:rgba(255,250,238,.92); }
.orgw-settings-card strong { display:block; color:#5a3518; font-size:21px; margin-bottom:6px; }
.orgw-settings-card span { color:#6b4b2c; font-size:16px; line-height:1.38; }
.orgw-settings-actions { display:flex; justify-content:flex-end; gap:12px; }
.orgw-primary-action.is-danger { background:linear-gradient(180deg,#d87d57,#b44d2f) !important; color:#fff !important; }
.orgw-settings-footnote { margin:0; text-align:right; font-size:14px; color:#7a5a36; }
.orgw-shared-pen-zone .orgw-pen-canvas { display:block !important; opacity:1 !important; visibility:visible !important; z-index:9 !important; height:78% !important; }
.orgw-pen-animal-sprite { display:none !important; }
@media (max-width: 900px) {
  .orgw-topbar { gap:10px !important; }
  .orgw-stat { min-height:74px; padding:0 10px 10px !important; }
  .orgw-stat .orgw-stat-value { font-size:22px !important; }
  .orgw-game:not(.is-layout-editor) .orgw-utility-buttons { grid-template-columns:minmax(0,1.24fr) minmax(0,.88fr) 60px; grid-auto-rows:minmax(62px,auto); gap:8px !important; }
  .orgw-utility-buttons button { min-height:60px !important; }
  .orgw-harvest-pass-button span { font-size:15px; bottom:8px; }
  .orgw-needs-button small { font-size:12px; bottom:9px; }
  .orgw-world-board-preview { width:70% !important; gap:5px !important; }
  .orgw-world-board-preview strong { font-size:20px !important; }
  .orgw-world-board-preview small { font-size:14px !important; }
  .orgw-scene-note { font-size:16px !important; padding:10px 18px !important; }
  .orgw-settings-grid { grid-template-columns:1fr; }
}


/* ORG World 0.1.21 — Daily Tasks board title overlay */
.orgw-world-board-preview {
  top: 14% !important;
  width: 86% !important;
  gap: 6px !important;
}
.orgw-world-board-preview img {
  display: block;
  width: 96%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  filter: drop-shadow(0 4px 10px rgba(61, 41, 15, .18));
}
.orgw-world-board-preview strong { display:none !important; }
.orgw-world-board-preview small {
  margin-top: 2px;
  display: block !important;
  max-width: none !important;
  white-space: nowrap !important;
  font-size: clamp(24px, 1.45vw, 32px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  color: #5a3518 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.95);
  letter-spacing: .02em;
}
.orgw-task-board.is-complete .orgw-world-board-preview small { color: #355b27 !important; }
@media (max-width: 900px) {
  .orgw-world-board-preview { top: 13% !important; width: 90% !important; }
  .orgw-world-board-preview small { font-size: 18px !important; }
}

/* ORG World 0.1.22 — corrected transparent Daily Tasks header */
.orgw-world-board-preview {
  top: 20% !important;
  width: 78% !important;
  gap: 4px !important;
}
.orgw-world-board-preview img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: drop-shadow(0 4px 8px rgba(62, 41, 14, .18)) !important;
}
.orgw-world-board-preview small {
  margin-top: 4px !important;
  font-size: clamp(27px, 1.55vw, 34px) !important;
  color: #5a3518 !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-align: center !important;
}
@media (max-width: 900px) {
  .orgw-world-board-preview {
    top: 19% !important;
    width: 80% !important;
  }
  .orgw-world-board-preview small {
    font-size: 20px !important;
  }
}


/* ORG World 0.1.23 — sharper tasks template, improved HUD and functional test/shop controls */
.orgw-exact-template { image-rendering:auto !important; }
.orgw-modal.is-daily-tasks .orgw-modal-card { width:min(1776px,98vw) !important; height:auto !important; aspect-ratio:1672/941 !important; max-height:98vh !important; }
.orgw-modal.is-daily-tasks [data-modal-content] { width:100% !important; height:100% !important; }
.orgw-tasks-v3-scroll { left:17.4% !important; top:21.4% !important; width:65.2% !important; height:65.7% !important; }
.orgw-tasks-v3-meta { top:16.4% !important; }

.orgw-stat .orgw-stat-value {
  position:absolute !important;
  left:59% !important;
  bottom:15% !important;
  width:56% !important;
  transform:translateX(-50%) !important;
  text-align:center !important;
  font-size:clamp(25px,1.48vw,34px) !important;
  line-height:1 !important;
  font-weight:900 !important;
}
.orgw-stat-coins .orgw-stat-value { left:63% !important; }
.orgw-stat-level .orgw-stat-value { left:61% !important; }
.orgw-topbar { gap:12px !important; }
.orgw-harvest-pass-button span { left:60% !important; bottom:13% !important; font-size:clamp(16px,.98vw,21px) !important; }
.orgw-needs-button small { left:61% !important; bottom:14% !important; font-size:clamp(13px,.83vw,18px) !important; }
.orgw-settings-button { background-size:contain !important; background-position:center bottom !important; min-height:78px !important; }

.orgw-settings-card.is-minigames { grid-column:span 1; }
.orgw-settings-test-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
[data-org-world] .orgw-settings-test-buttons button { min-height:52px; border:2px solid #9a692d !important; border-radius:14px !important; background:linear-gradient(180deg,#f8d783,#d99b32) !important; color:#4e2f11 !important; font-weight:900 !important; }
.orgw-animal-shop-feedback { margin:0 0 14px; padding:14px 18px; display:grid; gap:4px; border:2px solid #c29858; border-radius:16px; background:#fff2cf; color:#543317; }
.orgw-animal-shop-feedback.is-success { border-color:#6d983d; background:#eef8d8; }
.orgw-animal-shop-feedback.is-error { border-color:#b6583f; background:#ffe3d7; }
.orgw-animal-shop-feedback strong { font-size:21px; }
.orgw-animal-shop-feedback span { font-size:16px; line-height:1.35; }
.orgw-farmhouse-animal-card.is-at-capacity:not(.is-locked) button { background:linear-gradient(180deg,#ecd6a8,#c7a268) !important; color:#5d431f !important; }

@media (max-width:900px) {
  .orgw-stat .orgw-stat-value { font-size:19px !important; bottom:14% !important; }
  .orgw-topbar { gap:7px !important; }
  .orgw-settings-test-buttons { grid-template-columns:1fr; }
  .orgw-modal.is-daily-tasks .orgw-modal-card { width:98% !important; }
}


/* ORG World 0.1.24 — restore premium gambler art fullscreen and compact field layout */
.orgw-gambler-stage {
  width: min(1720px, 98vw, calc((100vh - 12px) * 1.48883375));
  max-width: 98vw;
}
.orgw-modal.is-gambler-game { padding: 6px !important; }
.orgw-modal.is-gambler-game [data-modal-content] { place-items: center; }
.orgw-gambler-rules { z-index: 10; }
.orgw-gambler-rules .orgw-secondary-action {
  margin-top: 14px;
  min-width: 180px;
}

.orgw-modal.is-field-panel .orgw-modal-card {
  width: 96% !important;
  height: 92% !important;
  padding: 18px 22px !important;
}
.orgw-modal.is-field-panel [data-modal-content] {
  overflow: hidden;
  padding-right: 0;
}
.orgw-field-panel-v2 {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 14px;
  height: 100%;
}
.orgw-field-showcase {
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
}
.orgw-field-showcase-art {
  min-height: 180px;
  border-radius: 18px;
  background: linear-gradient(180deg, #fff9ef, #f3e2c5);
}
.orgw-field-showcase-art img {
  width: min(280px, 100%);
  max-height: 170px;
  object-fit: contain;
}
.orgw-field-showcase-copy h2 { font-size: clamp(44px, 2.9vw, 62px); }
.orgw-field-showcase-copy p { font-size: clamp(17px, 1.1vw, 21px); }
.orgw-field-showcase-badges { gap: 10px; }
.orgw-field-showcase-actions { display: grid; align-self: start; }
.orgw-field-upgrade-corner {
  min-width: 220px;
  justify-self: end;
  white-space: nowrap;
}
.orgw-field-upgrade-inline {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px 18px;
  padding: 14px 20px;
  border: 2px solid #e2c895;
  border-radius: 20px;
  background: linear-gradient(180deg, #fbf3de, #f2e1bb);
  color: #5a3315;
}
.orgw-field-upgrade-inline strong {
  font-size: clamp(22px, 1.55vw, 29px);
}
.orgw-field-upgrade-inline small,
.orgw-field-upgrade-inline em {
  font-size: clamp(15px, 1vw, 18px);
  color: #6c4722;
  font-style: normal;
}
.orgw-field-upgrade-inline em {
  grid-column: 2 / 4;
  font-weight: 700;
}
.orgw-field-panel-section {
  display: grid;
  grid-template-rows: auto auto auto auto auto;
  align-content: start;
  gap: 12px;
  min-height: 0;
}
.orgw-crop-choice-strip-wrap {
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 6px;
}
.orgw-crop-choice-strip {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 14px;
}
.orgw-crop-choice-card { min-height: 175px; padding: 14px !important; }
.orgw-crop-choice-card .orgw-crop-choice-hero { min-height: 76px; }
.orgw-crop-choice-card img { width: 78px; height: 78px; }
.orgw-crop-choice-card strong { font-size: clamp(18px, 1.28vw, 25px); }
.orgw-crop-choice-card span,
.orgw-crop-choice-card small,
.orgw-crop-choice-card .orgw-crop-choice-stats span { font-size: clamp(12px, .85vw, 15px); }
.orgw-field-selection-summary { padding: 14px 16px; gap: 14px; }
.orgw-field-selection-copy strong { font-size: clamp(26px, 1.8vw, 34px); }
.orgw-field-selection-copy p { font-size: clamp(13px, .92vw, 16px); }
.orgw-field-selection-metrics em { font-size: clamp(19px, 1.25vw, 26px); }
.orgw-field-panel-actions { margin-top: 2px; justify-content: center; }
.orgw-field-panel-actions > * { min-width: 280px; }
.orgw-field-panel-footnote { margin-top: 0; }
@media (max-width: 1360px) {
  .orgw-field-showcase { grid-template-columns: 220px minmax(0, 1fr); }
  .orgw-field-showcase-actions { grid-column: 1 / -1; justify-self: end; }
  .orgw-field-upgrade-inline { grid-template-columns: 1fr; }
  .orgw-field-upgrade-inline em { grid-column: auto; }
}
@media (max-width: 980px) {
  .orgw-field-panel-v2 { grid-template-rows: auto auto minmax(0, 1fr); }
  .orgw-modal.is-field-panel [data-modal-content] { overflow: auto; }
}


/* ORG World 0.1.25 — final minigame sizing, adjustable task logo and visible roaming animals */
.orgw-world-board-preview {
  left: var(--orgw-task-logo-x, 50%) !important;
  top: var(--orgw-task-logo-y, 20%) !important;
  width: calc(78% * var(--orgw-task-logo-scale, 1)) !important;
  transform: translate(-50%, 0) !important;
}
.orgw-world-board-preview img {
  width: 100% !important;
  max-width: 100% !important;
}
.orgw-world-board-preview small {
  font-size: var(--orgw-task-progress-size, 32px) !important;
  line-height: 1 !important;
}

.orgw-modal.is-gambler-game {
  padding: 4px !important;
}
.orgw-modal.is-gambler-game .orgw-modal-card,
.orgw-modal.is-gambler-game [data-modal-content] {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
}
.orgw-gambler-stage {
  height: var(--orgw-gambler-height, 94%) !important;
  width: auto !important;
  max-width: 96% !important;
  max-height: 98% !important;
  aspect-ratio: 1200 / 806 !important;
  margin: auto !important;
}

.orgw-modal.is-potion {
  padding: 1.2% !important;
}
.orgw-modal.is-potion .orgw-modal-card {
  width: var(--orgw-potion-width, 88%) !important;
  height: var(--orgw-potion-height, 92%) !important;
  max-width: none !important;
  max-height: none !important;
  padding: 30px 38px !important;
  overflow: hidden !important;
}
.orgw-modal.is-potion [data-modal-content] {
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 8px;
}
.orgw-modal.is-potion .orgw-modal-close {
  z-index: 30;
  right: 18px;
  top: 12px;
  font-size: 42px;
}
.orgw-modal.is-potion .orgw-potion-intro {
  grid-template-columns: 190px minmax(0, 1fr);
  min-height: 145px;
  padding: 20px 24px;
}
.orgw-modal.is-potion .orgw-potion-intro img {
  max-height: 135px;
}
.orgw-modal.is-potion .orgw-potion-intro p,
.orgw-modal.is-potion .orgw-potion-rule span,
.orgw-modal.is-potion .orgw-potion-recipe span,
.orgw-modal.is-potion .orgw-potion-recipe small,
.orgw-modal.is-potion .orgw-potion-use span {
  font-size: 19px;
  line-height: 1.35;
}
.orgw-modal.is-potion .orgw-potion-rule strong,
.orgw-modal.is-potion .orgw-potion-recipe strong,
.orgw-modal.is-potion .orgw-potion-use strong {
  font-size: 25px;
}
.orgw-modal.is-potion .orgw-potion-puzzle {
  margin: 18px 0;
  padding: 22px 26px;
}
.orgw-modal.is-potion .orgw-potion-bottles {
  min-height: 320px;
  margin: 22px 0 14px;
  gap: 28px;
  flex-wrap: nowrap;
}
[data-org-world] .orgw-modal.is-potion button.orgw-potion-bottle,
[data-org-world] .orgw-modal.is-potion button.orgw-potion-bottle:hover,
[data-org-world] .orgw-modal.is-potion button.orgw-potion-bottle:focus,
[data-org-world] .orgw-modal.is-potion button.orgw-potion-bottle:active {
  flex: 0 0 98px;
  width: 98px !important;
  height: 260px !important;
  border-width: 5px !important;
  border-radius: 16px 16px 28px 28px !important;
}
.orgw-modal.is-potion .orgw-potion-puzzle-status {
  font-size: 22px;
}
.orgw-modal.is-potion .orgw-potion-actions button,
.orgw-modal.is-potion .orgw-potion-difficulty button {
  min-height: 54px;
  padding: 12px 22px !important;
  font-size: 19px !important;
}

/* Reliable animal display: directional graphics move inside the shared pen. */
.orgw-shared-pen-zone .orgw-pen-canvas {
  display: none !important;
}
.orgw-shared-pen-zone .orgw-pen-animal-sprite:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 84 !important;
  left: 26%;
  bottom: calc(10% - var(--orgw-animal-y, 0%));
  width: calc(88% * var(--orgw-animal-scale, 1));
  height: 72%;
  object-fit: contain;
  object-position: center bottom;
  transform-origin: center bottom;
  animation: orgw-animal-roam-left 8.5s ease-in-out infinite;
}
.orgw-shared-pen-zone:nth-of-type(even) .orgw-pen-animal-sprite:not([hidden]),
.orgw-pen-right .orgw-pen-animal-sprite:not([hidden]) {
  animation-name: orgw-animal-roam-right;
  animation-delay: -2.4s;
}
.orgw-pen-animal-sprite[data-animal="chicken"],
.orgw-pen-animal-sprite[data-animal="duck"] {
  width: calc(68% * var(--orgw-animal-scale, 1)) !important;
  height: 58% !important;
  bottom: calc(13% - var(--orgw-animal-y, 0%)) !important;
}
.orgw-world-pen-foreground {
  display: block !important;
  z-index: 86 !important;
}
@keyframes orgw-animal-roam-left {
  0%   { left: 24%; transform: translateX(-50%) translateY(0) scaleX(1); }
  44%  { left: 72%; transform: translateX(-50%) translateY(-4px) scaleX(1); }
  50%  { left: 72%; transform: translateX(-50%) translateY(0) scaleX(-1); }
  94%  { left: 24%; transform: translateX(-50%) translateY(-4px) scaleX(-1); }
  100% { left: 24%; transform: translateX(-50%) translateY(0) scaleX(1); }
}
@keyframes orgw-animal-roam-right {
  0%   { left: 70%; transform: translateX(-50%) translateY(0) scaleX(-1); }
  44%  { left: 28%; transform: translateX(-50%) translateY(-4px) scaleX(-1); }
  50%  { left: 28%; transform: translateX(-50%) translateY(0) scaleX(1); }
  94%  { left: 70%; transform: translateX(-50%) translateY(-4px) scaleX(1); }
  100% { left: 70%; transform: translateX(-50%) translateY(0) scaleX(-1); }
}
@media (prefers-reduced-motion: reduce) {
  .orgw-shared-pen-zone .orgw-pen-animal-sprite:not([hidden]) {
    animation: none !important;
    left: 50% !important;
  }
}


/* ORG World 0.1.26 — refreshed top UI, cleaner field panel, tuned animals and task logo */
.orgw-topbar {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px !important;
  align-items: stretch;
}
.orgw-stat {
  min-height: 98px !important;
  padding: 0 18px 14px !important;
  background-size: 100% 100% !important;
}
.orgw-stat .orgw-stat-value {
  font-size: clamp(27px, 1.55vw, 38px) !important;
}
.orgw-game:not(.is-layout-editor) .orgw-utility-buttons {
  grid-template-columns: minmax(0, 1.38fr) minmax(0, 1fr) 72px !important;
  grid-auto-rows: minmax(76px, auto) !important;
  gap: 12px !important;
}
.orgw-utility-buttons button {
  min-height: 76px !important;
  background-size: 100% 100% !important;
}
.orgw-settings-button {
  min-height: 72px !important;
}
.orgw-harvest-pass-button span {
  bottom: 12px;
  font-size: clamp(17px, 1.02vw, 22px) !important;
}
.orgw-needs-button small {
  bottom: 14px;
  font-size: clamp(13px, 0.88vw, 18px) !important;
}
.orgw-world-board-preview {
  left: var(--orgw-task-logo-x, 50%) !important;
  top: var(--orgw-task-logo-y, 12%) !important;
  width: calc(72% * var(--orgw-task-logo-scale, 1)) !important;
  gap: 4px !important;
  transform: translate(-50%, 0) !important;
}
.orgw-world-board-preview strong,
.orgw-world-board-preview img {
  width: 100% !important;
  max-width: 100% !important;
}
.orgw-world-board-preview small {
  font-size: var(--orgw-task-progress-size, 34px) !important;
  line-height: 1 !important;
  margin-top: 4px;
}

/* Field panel more like the approved example: compact and readable. */
.orgw-modal.is-field-panel {
  padding: 2vh 2vw !important;
}
.orgw-modal.is-field-panel .orgw-modal-card {
  width: min(1280px, 86vw) !important;
  height: min(820px, 84vh) !important;
  max-width: none !important;
  max-height: none !important;
  padding: 18px 20px !important;
  overflow: hidden !important;
}
.orgw-modal.is-field-panel [data-modal-content] {
  height: 100%;
  overflow: hidden !important;
  padding-right: 0 !important;
}
.orgw-field-panel-v2 {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 12px !important;
  height: 100%;
}
.orgw-field-showcase {
  grid-template-columns: 180px minmax(0, 1fr) auto !important;
  align-items: center;
  gap: 16px !important;
  padding: 14px 16px !important;
}
.orgw-field-showcase-art {
  min-height: 118px !important;
  border-radius: 16px !important;
}
.orgw-field-showcase-art img {
  width: min(170px, 90%) !important;
  max-height: 110px !important;
}
.orgw-field-showcase-copy h2 {
  font-size: clamp(24px, 2vw, 38px) !important;
}
.orgw-field-showcase-copy p {
  font-size: clamp(14px, .98vw, 17px) !important;
  line-height: 1.25 !important;
}
.orgw-field-showcase-badges {
  gap: 8px !important;
}
.orgw-field-showcase-badges span,
.orgw-field-panel-badges span {
  font-size: 14px !important;
  padding: 7px 10px !important;
}
.orgw-field-upgrade-corner {
  min-width: 180px !important;
}
.orgw-field-upgrade-inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center;
  gap: 8px 14px !important;
  padding: 12px 16px !important;
}
.orgw-field-upgrade-inline strong {
  font-size: clamp(19px, 1.4vw, 27px) !important;
}
.orgw-field-upgrade-inline small,
.orgw-field-upgrade-inline em {
  font-size: clamp(13px, .95vw, 16px) !important;
}
.orgw-field-upgrade-inline em {
  grid-column: 1 / -1 !important;
}
.orgw-field-panel-section {
  display: grid;
  align-content: start;
  gap: 10px !important;
  min-height: 0;
}
.orgw-field-panel-section-head h3,
.orgw-field-panel-section h3 {
  font-size: clamp(24px, 1.6vw, 30px) !important;
}
.orgw-field-panel-section-head p {
  font-size: clamp(13px, .92vw, 15px) !important;
}
.orgw-crop-choice-strip-wrap {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding-bottom: 2px !important;
}
.orgw-crop-choice-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(155px, 1fr)) !important;
  gap: 12px !important;
}
.orgw-crop-choice-card {
  min-height: 146px !important;
  padding: 12px !important;
  border-radius: 18px !important;
}
.orgw-crop-choice-card .orgw-crop-choice-hero {
  min-height: 58px !important;
}
.orgw-crop-choice-card img {
  width: 62px !important;
  height: 62px !important;
}
.orgw-crop-choice-card strong {
  font-size: clamp(18px, 1.15vw, 22px) !important;
}
.orgw-crop-choice-card span,
.orgw-crop-choice-card small,
.orgw-crop-choice-card .orgw-crop-choice-stats span,
.orgw-crop-choice-card .orgw-crop-choice-stats em {
  font-size: clamp(12px, .82vw, 14px) !important;
}
.orgw-field-selection-summary {
  padding: 12px 16px !important;
  gap: 12px !important;
}
.orgw-field-selection-hero img {
  width: 82px !important;
  height: 82px !important;
}
.orgw-field-selection-copy strong {
  font-size: clamp(24px, 1.7vw, 32px) !important;
}
.orgw-field-selection-copy p {
  font-size: clamp(13px, .88vw, 15px) !important;
}
.orgw-field-selection-metrics {
  gap: 8px !important;
}
.orgw-field-selection-metrics span {
  font-size: 13px !important;
}
.orgw-field-selection-metrics em {
  font-size: clamp(18px, 1.15vw, 24px) !important;
}
.orgw-field-panel-actions {
  margin-top: 0 !important;
  justify-content: center !important;
  gap: 12px !important;
}
.orgw-field-panel-actions > * {
  min-width: 220px !important;
}
.orgw-field-panel-footnote {
  margin-top: 0 !important;
  font-size: 13px !important;
}

/* More natural animal size and positioning in the pen. */
.orgw-shared-pen-zone .orgw-pen-canvas {
  display: none !important;
}
.orgw-shared-pen-zone .orgw-pen-animal-sprite:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  left: 50% !important;
  bottom: calc(7% - var(--orgw-animal-y, 0%)) !important;
  width: calc(60% * var(--orgw-animal-scale, 1)) !important;
  height: 60% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: translateX(-50%) !important;
  animation: orgw-pen-animal-idle 2.6s ease-in-out infinite !important;
  z-index: 84 !important;
}
.orgw-pen-animal-sprite[data-animal="chicken"],
.orgw-pen-animal-sprite[data-animal="duck"] {
  width: calc(44% * var(--orgw-animal-scale, 1)) !important;
  height: 42% !important;
  bottom: calc(10% - var(--orgw-animal-y, 0%)) !important;
}
.orgw-world-pen-foreground {
  display: block !important;
  z-index: 86 !important;
}

@media (max-width: 1200px) {
  .orgw-modal.is-field-panel .orgw-modal-card {
    width: 94vw !important;
    height: 88vh !important;
  }
  .orgw-field-showcase {
    grid-template-columns: 140px minmax(0, 1fr) !important;
  }
  .orgw-field-showcase-actions {
    grid-column: 1 / -1;
    justify-self: end;
  }
}
@media (max-width: 900px) {
  .orgw-topbar { gap: 8px !important; }
  .orgw-stat { min-height: 78px !important; padding: 0 10px 10px !important; }
  .orgw-stat .orgw-stat-value { font-size: 21px !important; }
  .orgw-game:not(.is-layout-editor) .orgw-utility-buttons {
    grid-template-columns: minmax(0,1.28fr) minmax(0,.92fr) 58px !important;
    grid-auto-rows: minmax(60px,auto) !important;
    gap: 8px !important;
  }
  .orgw-utility-buttons button { min-height: 60px !important; }
  .orgw-world-board-preview { width: calc(78% * var(--orgw-task-logo-scale, 1)) !important; }
  .orgw-crop-choice-strip { grid-template-columns: repeat(4, minmax(150px, 160px)) !important; }
}


/* ORG World 0.1.27 — registered APK graphics and live Animal Animation Lab output. */
.orgw-stat { background-image: var(--orgw-stat-bg) !important; }
.orgw-utility-buttons button { background-image: var(--orgw-utility-bg) !important; }
.orgw-shared-pen-zone .orgw-pen-canvas {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 84 !important;
  pointer-events: none !important;
}
.orgw-shared-pen-zone .orgw-pen-animal-sprite { display: none !important; }
.orgw-world-pen-foreground { z-index: 86 !important; }

/* ORG World 0.1.29 — four-times-area swipe camera */
.orgw-world {
  position: relative;
  overflow: hidden;
  touch-action: none;
  overscroll-behavior: contain;
}
.orgw-camera-surface {
  --orgw-world-scale: 2;
  position: absolute;
  left: 0;
  top: 0;
  width: calc(var(--orgw-world-scale) * 100%);
  height: calc(var(--orgw-world-scale) * 100%);
  transform: translate3d(0, 0, 0);
  transform-origin: 0 0;
  will-change: transform;
  z-index: 1;
}
.orgw-camera-surface > .orgw-world-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}
.orgw-world.has-swipe-camera {
  cursor: grab;
}
.orgw-world.has-swipe-camera.is-camera-dragging {
  cursor: grabbing;
}
.orgw-world.has-swipe-camera.is-camera-dragging .orgw-camera-surface {
  transition: none !important;
}
.orgw-topbar,
.orgw-utility-buttons {
  z-index: 500 !important;
}
.orgw-modal,
.orgw-toast {
  z-index: 1000;
}
.orgw-camera-hint {
  position: absolute;
  left: 50%;
  bottom: 9%;
  z-index: 560;
  transform: translate(-50%, 18px);
  padding: 13px 22px;
  border: 2px solid rgba(100, 66, 26, .45);
  border-radius: 999px;
  background: rgba(255, 248, 226, .96);
  box-shadow: 0 10px 28px rgba(37, 24, 8, .28);
  color: #4b3017;
  font-size: clamp(16px, 1vw, 22px);
  font-weight: 900;
  opacity: 0;
  pointer-events: none;
  transition: opacity .35s ease, transform .35s ease;
}
.orgw-camera-hint.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
}
.orgw-camera-editor-viewport {
  display: none;
  position: absolute;
  z-index: 540;
  border: 4px solid rgba(255,255,255,.95);
  outline: 3px solid rgba(48, 111, 185, .92);
  background: rgba(42, 112, 188, .08);
  box-shadow: 0 0 0 9999px rgba(10, 18, 28, .16), inset 0 0 0 2px rgba(42,112,188,.25);
  pointer-events: none;
}
.orgw-camera-editor-viewport span {
  position: absolute;
  left: 8px;
  top: 8px;
  padding: 5px 9px;
  border-radius: 7px;
  background: rgba(23, 72, 128, .92);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}
.orgw-game.is-layout-editor .orgw-camera-surface,
.orgw-game[data-orgw-mode="layout-editor"] .orgw-camera-surface {
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
  will-change: auto;
}
.orgw-game.is-layout-editor .orgw-camera-editor-viewport,
.orgw-game[data-orgw-mode="layout-editor"] .orgw-camera-editor-viewport {
  display: block;
}
.orgw-game.is-layout-editor .orgw-camera-hint,
.orgw-game[data-orgw-mode="layout-editor"] .orgw-camera-hint {
  display: none !important;
}
@media (max-width: 900px) {
  .orgw-camera-hint {
    bottom: 7%;
    padding: 10px 16px;
    font-size: 14px;
  }
}


/* ORG World 0.1.30 — fixed HUD, smooth camera, readable text and clipped mobile viewport */
.orgw-fixed-hud {
  position: absolute;
  inset: 0;
  z-index: 900;
  pointer-events: none;
  overflow: visible;
  contain: layout style;
}
.orgw-fixed-hud .orgw-topbar,
.orgw-fixed-hud .orgw-utility-buttons {
  pointer-events: auto;
  z-index: 2 !important;
}
.orgw-stat,
.orgw-utility-buttons button {
  position: relative;
  overflow: visible;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.orgw-hud-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: fill;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
  filter: drop-shadow(0 5px 8px rgba(54, 37, 14, .22));
}
.orgw-stat .orgw-stat-value,
.orgw-harvest-pass-button span,
.orgw-needs-button small {
  position: relative;
  z-index: 2;
}
.orgw-stat .orgw-stat-value {
  align-self: stretch;
  margin-top: auto;
  padding-bottom: 7%;
  text-align: center;
  color: #3c2917;
  text-shadow: 0 1px 0 rgba(255,255,255,.92);
  font-size: clamp(30px, 1.78vw, 42px) !important;
  line-height: 1;
}
.orgw-camera-surface {
  contain: layout paint style;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: translate3d(0,0,0);
  will-change: transform;
}
.orgw-camera-surface > * {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.orgw-world.has-swipe-camera {
  touch-action: none !important;
  user-select: none;
  -webkit-user-select: none;
}
.orgw-world.is-camera-dragging .orgw-camera-surface {
  pointer-events: none;
}
.orgw-shared-pen-zone .orgw-pen-canvas {
  image-rendering: auto;
  transform: translateZ(0);
  will-change: contents;
}

/* Text is deliberately larger because the fixed 1920x1080 design stage is scaled down on phones. */
.orgw-modal-card {
  font-size: clamp(18px, 1.18vw, 24px);
}
.orgw-modal-card h2 { font-size: clamp(34px, 2.3vw, 48px); line-height: 1.08; }
.orgw-modal-card h3 { font-size: clamp(26px, 1.75vw, 36px); line-height: 1.1; }
.orgw-modal-card p,
.orgw-modal-card label,
.orgw-modal-card li,
.orgw-modal-card td,
.orgw-modal-card th { font-size: clamp(17px, 1.02vw, 22px); line-height: 1.35; }
.orgw-modal-card small { font-size: clamp(15px, .92vw, 19px); line-height: 1.28; }
.orgw-modal-card button,
.orgw-modal-card input,
.orgw-modal-card select { font-size: clamp(17px, 1.02vw, 22px) !important; }
.orgw-scene-note,
.orgw-wood-label,
.orgw-market-cart-label,
.orgw-plot-label,
.orgw-pen-label,
.orgw-well-label { font-size: clamp(18px, 1.05vw, 23px) !important; }
.orgw-field-panel-kicker,
.orgw-field-upgrade-kicker,
.orgw-task-kicker { font-size: clamp(15px, .9vw, 19px) !important; }
.orgw-animal-row strong,
.orgw-animal-card strong,
.orgw-recipe-card strong { font-size: clamp(21px, 1.35vw, 28px) !important; }
.orgw-animal-row span,
.orgw-animal-card span,
.orgw-recipe-card span { font-size: clamp(16px, .98vw, 21px) !important; }


/* ORG World 0.1.31 — true fullscreen mobile camera, transparent HUD and Animation Lab animals */
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-topbar {
  left: 1.2% !important;
  top: .7% !important;
  width: 68.3% !important;
  height: 10.2% !important;
  display: grid !important;
  grid-template-columns: repeat(5,minmax(0,1fr)) !important;
  gap: .55% !important;
}
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-utility-buttons {
  left: 70.2% !important;
  top: .7% !important;
  width: 28.6% !important;
  height: 10.2% !important;
  display: grid !important;
  grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) minmax(0,.42fr) !important;
  grid-template-rows: 1fr !important;
  gap: 1.8% !important;
  align-items: stretch !important;
}
.orgw-fixed-hud .orgw-stat,
.orgw-fixed-hud .orgw-utility-buttons button {
  min-width: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.orgw-fixed-hud .orgw-hud-frame {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
  filter: drop-shadow(0 5px 7px rgba(45,30,12,.23)) !important;
}
.orgw-fixed-hud .orgw-stat-value {
  position: absolute !important;
  left: 44% !important;
  right: 7% !important;
  bottom: 19% !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  font-size: clamp(27px,1.7vw,39px) !important;
  color: #3d2915 !important;
}
.orgw-harvest-pass-button span {
  position: absolute !important;
  left: 38% !important;
  right: 8% !important;
  bottom: 11% !important;
  transform: none !important;
  min-width: 0 !important;
  font-size: clamp(16px,1vw,22px) !important;
}
.orgw-needs-values {
  position: absolute;
  z-index: 3;
  left: 4%;
  right: 4%;
  bottom: 8%;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8%;
  color: #4a3017;
  text-shadow: 0 1px rgba(255,255,255,.9);
  font-size: clamp(13px,.82vw,18px);
  font-weight: 900;
  line-height: 1;
}
.orgw-needs-values b { text-align:center; }
.orgw-settings-button .orgw-hud-frame { object-fit: contain !important; }

/* Only the Animation Lab canvas is permitted in the world pen. */
.orgw-shared-pen-zone .orgw-pen-canvas {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 84 !important;
  pointer-events: none !important;
  transform: none !important;
  will-change: auto !important;
}
.orgw-shared-pen-zone .orgw-pen-animal-sprite { display:none !important; }
.orgw-world-pen-foreground { z-index:86 !important; }

/* A single translated surface avoids per-child Android GPU layers and blinking. */
.orgw-camera-surface { backface-visibility: visible !important; -webkit-backface-visibility: visible !important; contain: layout style !important; }
.orgw-camera-surface > * { backface-visibility: visible !important; -webkit-backface-visibility: visible !important; }
.orgw-world-bg { image-rendering:auto; }


/* ORG World 0.1.32 — mobile HUD values, adaptive help bar, field popup and thicker task progress */
.orgw-fixed-hud .orgw-stat-value {
  left: 48% !important;
  right: 5% !important;
  bottom: 20% !important;
  display: grid !important;
  place-items: center !important;
  white-space: nowrap !important;
  overflow: visible !important;
  font-size: clamp(28px,1.62vw,38px) !important;
  line-height: 1 !important;
  font-variant-numeric: tabular-nums !important;
}
.orgw-scene-note {
  left: 2.2% !important;
  right: auto !important;
  bottom: 2.2% !important;
  top: auto !important;
  width: fit-content !important;
  min-width: 330px !important;
  max-width: min(58%, 1060px) !important;
  height: auto !important;
  min-height: 62px !important;
  padding: 13px 24px 13px 64px !important;
  border-radius: 20px !important;
  background: rgba(255,249,232,.96) !important;
  border: 2px solid rgba(112,75,31,.45) !important;
  box-shadow: 0 10px 28px rgba(39,25,8,.26) !important;
  color: #4a3018 !important;
  font-size: clamp(18px,1.08vw,23px) !important;
  line-height: 1.25 !important;
  text-align: left !important;
  transform: none !important;
  z-index: 560 !important;
}
.orgw-scene-note .orgw-tip-icon {
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #6d9632 !important;
  color: #fff !important;
  font-size: 25px !important;
  font-weight: 900 !important;
}
.orgw-scene-note.is-collapsed {
  left: 2.2% !important;
  right: auto !important;
  bottom: 2.2% !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 !important;
  border-radius: 50% !important;
}
.orgw-scene-note.is-collapsed .orgw-tip-icon {
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%,-50%) !important;
  width: 42px !important;
  height: 42px !important;
}
.orgw-tasks-v3-progress {
  height: clamp(26px,2.8vh,36px) !important;
  border-width: 2px !important;
}
.orgw-tasks-v3-progress b {
  font-size: clamp(13px,.86vw,17px) !important;
  font-weight: 900 !important;
}


/* ORG World 0.1.33 — smooth player-controlled pinch zoom */
.orgw-camera-surface {
  transform-origin: 0 0 !important;
  will-change: transform;
}
.orgw-world.has-pinch-zoom,
.orgw-world.has-pinch-zoom * {
  -webkit-user-select: none;
  user-select: none;
}
.orgw-world.is-camera-zooming {
  cursor: zoom-in;
}
.orgw-world.is-camera-zooming .orgw-camera-surface {
  transition: none !important;
  pointer-events: none;
}
.orgw-settings-zoom-value {
  display: inline-grid;
  place-items: center;
  width: fit-content;
  min-width: 72px;
  margin-top: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(74, 48, 23, .12);
  color: #4a3017;
  font-size: 1.05em;
  font-variant-numeric: tabular-nums;
}


/* ORG World 0.1.35 — Android compositor, animal animation and runtime performance repair. */
.orgw-camera-surface {
  will-change: auto !important;
}
.orgw-world.is-camera-dragging .orgw-camera-surface,
.orgw-world.is-camera-zooming .orgw-camera-surface,
.orgw-world.is-camera-inertia .orgw-camera-surface {
  will-change: transform !important;
}
.orgw-fixed-hud,
.orgw-fixed-hud .orgw-topbar,
.orgw-fixed-hud .orgw-utility-buttons {
  opacity: 1 !important;
  visibility: visible !important;
}
.orgw-game.is-runtime-restoring .orgw-fixed-hud {
  transform: translate3d(0,0,0);
}
body.orgw-modal-open .orgw-visitor-panel img,
body.orgw-modal-open .orgw-shared-pen-zone .orgw-pen-canvas {
  animation-play-state: paused !important;
}
.orgw-shared-pen-zone .orgw-pen-canvas {
  will-change: auto !important;
  contain: layout paint style;
}


/* ORG World 0.1.37 — fixed horizontal crop carousel and calibrated HUD values. */
.orgw-field-crop-section {
  grid-template-rows: auto minmax(176px, 1fr) auto auto auto !important;
  overflow: hidden !important;
}
.orgw-crop-carousel {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) 54px;
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  min-height: 176px;
}
[data-org-world] button.orgw-crop-slide,
[data-org-world] button.orgw-crop-slide:hover,
[data-org-world] button.orgw-crop-slide:focus,
[data-org-world] button.orgw-crop-slide:focus-visible,
[data-org-world] button.orgw-crop-slide:active {
  display: grid;
  place-items: center;
  width: 54px;
  min-width: 54px;
  min-height: 100%;
  margin: 0;
  padding: 0 0 5px;
  border: 2px solid #d8b875 !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #fff2ca, #e8bd62) !important;
  box-shadow: 0 8px 16px rgba(91, 57, 18, .16) !important;
  color: #5a3417 !important;
  font: 900 46px/1 Georgia, serif !important;
  cursor: pointer;
  touch-action: manipulation;
}
[data-org-world] button.orgw-crop-slide:hover,
[data-org-world] button.orgw-crop-slide:focus-visible {
  border-color: #a77528 !important;
  transform: translateY(-1px);
}
[data-org-world] button.orgw-crop-slide:disabled {
  opacity: .38 !important;
  filter: grayscale(.35);
  cursor: default;
  transform: none !important;
}
.orgw-crop-choice-strip-wrap {
  width: 100%;
  min-width: 0;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  touch-action: pan-x !important;
  -webkit-overflow-scrolling: touch;
}
.orgw-crop-choice-strip-wrap::-webkit-scrollbar { display: none; }
.orgw-crop-choice-strip {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 24px) / 3) !important;
  grid-template-columns: none !important;
  width: 100% !important;
  min-width: 100% !important;
  gap: 12px !important;
  align-items: stretch !important;
}
.orgw-crop-choice-card {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 176px !important;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}
.orgw-field-selection-summary {
  min-height: 106px !important;
}
.orgw-field-panel-actions > .orgw-primary-action {
  min-height: 52px !important;
}

/* The number belongs in the parchment, not on top of the resource icon. */
.orgw-fixed-hud .orgw-stat-value {
  top: 34% !important;
  bottom: 24% !important;
  right: 6% !important;
  height: auto !important;
  transform: none !important;
  font-size: clamp(25px, 1.48vw, 34px) !important;
  font-weight: 900 !important;
  letter-spacing: -.02em;
}
.orgw-fixed-hud .orgw-stat-coins .orgw-stat-value { left: 58% !important; }
.orgw-fixed-hud .orgw-stat-wood .orgw-stat-value { left: 61% !important; }
.orgw-fixed-hud .orgw-stat-meat .orgw-stat-value { left: 59% !important; }
.orgw-fixed-hud .orgw-stat-level .orgw-stat-value { left: 58% !important; }
.orgw-fixed-hud .orgw-stat-xp .orgw-stat-value { left: 58% !important; }

@media (max-width: 1100px) {
  .orgw-crop-choice-strip {
    grid-auto-columns: calc((100% - 12px) / 2) !important;
  }
  .orgw-crop-carousel {
    grid-template-columns: 48px minmax(0, 1fr) 48px;
  }
  [data-org-world] button.orgw-crop-slide,
  [data-org-world] button.orgw-crop-slide:hover,
  [data-org-world] button.orgw-crop-slide:focus,
  [data-org-world] button.orgw-crop-slide:focus-visible,
  [data-org-world] button.orgw-crop-slide:active {
    width: 48px;
    min-width: 48px;
  }
}


/* ORG World 0.1.38 — exact transparent Animal Pen template and market-style animal carousel. */
.orgw-animal-pen-launch { display:grid; grid-template-columns:minmax(260px,.85fr) minmax(260px,1.2fr) auto; align-items:center; gap:22px; padding:16px 20px; border:2px solid #d7b16d; border-radius:20px; background:linear-gradient(180deg,#fff8e7,#f6e4bd); }
.orgw-animal-pen-launch-animals { display:grid; grid-template-columns:repeat(4,1fr); align-items:end; gap:4px; min-width:0; }
.orgw-animal-pen-launch-animals img { display:block; width:100%; height:88px; object-fit:contain; filter:drop-shadow(0 5px 4px rgba(73,43,15,.18)); }
.orgw-animal-pen-launch > div > strong { display:block; font:900 clamp(22px,1.4vw,30px)/1.1 Georgia,serif; color:#573112; }
.orgw-animal-pen-launch > div > span { display:block; margin-top:6px; font-size:17px; line-height:1.3; color:#76542d; }
.orgw-modal.is-animal-pen { padding:6px !important; }
.orgw-modal.is-animal-pen .orgw-modal-card { width:min(1672px,98vw,calc((100vh - 12px) * 1.776833)); height:auto !important; aspect-ratio:1672/941; max-width:98vw !important; max-height:calc(100vh - 12px) !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; overflow:visible !important; }
.orgw-modal.is-animal-pen .orgw-modal-close { display:none !important; }
.orgw-modal.is-animal-pen [data-modal-content] { width:100%; height:100%; overflow:visible !important; }
.orgw-animal-pen-stage { position:relative; width:100%; height:100%; overflow:visible; color:#4b2d15; user-select:none; touch-action:pan-x; }
.orgw-animal-pen-art { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; }
.orgw-animal-pen-art.is-fallback { border-radius:4%; background:#f8e6bd; }
.orgw-animal-pen-close,
.orgw-animal-pen-arrow { position:absolute; z-index:12; min-width:0 !important; min-height:0 !important; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; opacity:.02; }
.orgw-animal-pen-close { left:84.2%; top:4.5%; width:6.5%; height:9.4%; }
.orgw-animal-pen-arrow.is-prev { left:7.6%; top:51.1%; width:7.2%; height:12.8%; }
.orgw-animal-pen-arrow.is-next { left:85.2%; top:51.1%; width:7.2%; height:12.8%; }
.orgw-animal-pen-arrow[disabled] { cursor:default; }
.orgw-animal-pen-message { position:absolute; left:46.3%; top:16.2%; width:35.8%; height:12.2%; display:grid; align-content:center; gap:4px; padding:0 2.2%; z-index:4; }
.orgw-animal-pen-message strong { font:900 clamp(16px,1.35vw,25px)/1.1 Georgia,serif; color:#4b2d15; }
.orgw-animal-pen-message span { font-size:clamp(11px,.9vw,17px); line-height:1.24; font-weight:700; color:#6b4928; }
.orgw-animal-pen-message.is-success strong { color:#3e6b20; }
.orgw-animal-pen-message.is-error strong { color:#a43c27; }
.orgw-animal-pen-message.is-warning strong { color:#9a6415; }
.orgw-animal-pen-capacity { position:absolute; left:46.1%; top:30.2%; width:36.6%; height:8.5%; display:grid; grid-template-columns:auto minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; column-gap:10px; padding:0 1.2% 0 4.6%; z-index:4; }
.orgw-animal-pen-capacity strong { align-self:end; font-size:clamp(12px,1.05vw,20px); line-height:1; }
.orgw-animal-pen-capacity span { grid-column:1/3; align-self:start; font-size:clamp(9px,.78vw,15px); color:#6d4b2a; }
.orgw-animal-pen-capacity b { grid-column:3; grid-row:1/3; min-width:72px; text-align:center; font-size:clamp(10px,.85vw,17px); line-height:1.05; }
.orgw-animal-pen-cards { position:absolute; left:15.0%; top:44.2%; width:70.9%; height:34.8%; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.0%; z-index:5; }
.orgw-animal-pen-card { min-width:0; display:grid; grid-template-rows:12% minmax(0,1fr) 9% 9% 15%; justify-items:center; align-items:center; padding:1.2% 5.5% 3.2%; text-align:center; color:#4b2d15; }
.orgw-animal-pen-card > strong { align-self:end; font:900 clamp(14px,1.25vw,24px)/1 Georgia,serif; white-space:nowrap; }
.orgw-animal-pen-card > img { width:88%; height:100%; object-fit:contain; filter:drop-shadow(0 5px 4px rgba(73,43,15,.16)); }
.orgw-animal-pen-card > span { width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:clamp(8px,.68vw,13px); font-weight:800; color:#795735; }
.orgw-animal-pen-card > b { display:flex; align-items:center; justify-content:center; gap:5px; font-size:clamp(12px,1.04vw,20px); line-height:1; }
.orgw-animal-pen-card > b i { width:.78em; height:.78em; display:inline-grid; place-items:center; overflow:hidden; border-radius:50%; color:#f3ad13; background:#f3ad13; border:2px solid #d88c00; box-shadow:inset 0 0 0 2px #ffd866; }
.orgw-animal-pen-card-actions { width:100%; display:flex; align-items:stretch; justify-content:center; gap:5%; }
[data-org-world] .orgw-animal-pen-card-actions button { min-width:0 !important; min-height:0 !important; height:100%; padding:0 5% !important; border-radius:10px !important; font:900 clamp(11px,.96vw,18px)/1 Georgia,serif !important; }
[data-org-world] .orgw-animal-pen-buy { flex:1 1 auto; background:linear-gradient(180deg,#a5c437,#638c16) !important; color:#fffbe6 !important; border:2px solid #52720f !important; text-shadow:0 1px 1px #284300; }
[data-org-world] .orgw-animal-pen-manage { flex:0 1 44%; background:linear-gradient(180deg,#f7d47c,#d99b31) !important; color:#54310e !important; border:2px solid #b87818 !important; }
[data-org-world] .orgw-animal-pen-card-actions button[disabled] { opacity:.58; filter:grayscale(.45); cursor:default; }
.orgw-animal-pen-card.is-locked > img { filter:grayscale(.45) opacity(.58); }
.orgw-animal-pen-dots { position:absolute; left:41%; top:80.0%; width:18%; height:4%; display:flex; justify-content:center; align-items:center; gap:8%; z-index:8; }
[data-org-world] button.orgw-animal-pen-dot { width:14px; height:14px; min-width:0 !important; min-height:0 !important; padding:0 !important; border-radius:50%; border:1px solid #9d7139 !important; background:#c49a5b !important; box-shadow:inset 0 1px #f8dfae !important; }
[data-org-world] button.orgw-animal-pen-dot.is-active { background:#f0a90d !important; border-color:#fff0b1 !important; box-shadow:0 0 0 2px #d28b08 !important; }
@media (max-width:900px) {
  .orgw-animal-pen-launch { grid-template-columns:180px minmax(0,1fr) auto; gap:12px; padding:12px; }
  .orgw-animal-pen-launch-animals img { height:62px; }
  .orgw-animal-pen-launch > div > strong { font-size:19px; }
  .orgw-animal-pen-launch > div > span { font-size:13px; }
  .orgw-animal-pen-capacity { column-gap:4px; }
  .orgw-animal-pen-capacity b { min-width:48px; }
  [data-org-world] .orgw-animal-pen-card-actions button { border-radius:7px !important; }
}


/* ORG World 0.1.39 — unified Market/Pen-style Field carousel. */
.orgw-modal.is-field-panel {
  padding: 6px !important;
}
.orgw-modal.is-field-panel .orgw-modal-card {
  width: min(1500px, 98vw, calc((100vh - 12px) * 1.64)) !important;
  height: auto !important;
  aspect-ratio: 1.64 / 1 !important;
  max-width: 98vw !important;
  max-height: calc(100vh - 12px) !important;
  padding: 1.1% 1.25% !important;
  overflow: hidden !important;
}
.orgw-modal.is-field-panel [data-modal-content] {
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  padding: 0 !important;
}
.orgw-field-panel-v2 {
  display: grid !important;
  grid-template-rows: 24% 11% minmax(0, 1fr) !important;
  gap: 1.1% !important;
  height: 100% !important;
  min-height: 0 !important;
}
.orgw-field-showcase {
  grid-template-columns: 15% minmax(0, 1fr) 16% !important;
  gap: 1.4% !important;
  min-height: 0 !important;
  height: 100% !important;
  padding: 1.1% 1.3% !important;
  border-radius: 20px !important;
}
.orgw-field-showcase-art { min-height: 0 !important; height: 100% !important; }
.orgw-field-showcase-art img { width: 92% !important; height: 92% !important; max-height: none !important; object-fit: contain !important; }
.orgw-field-showcase-copy { min-width: 0 !important; }
.orgw-field-showcase-copy h2 { margin: 1% 0 1.2% !important; font-size: clamp(25px, 2.05vw, 39px) !important; }
.orgw-field-showcase-copy p { margin: 0 !important; font-size: clamp(13px, .95vw, 18px) !important; }
.orgw-field-showcase-badges { margin-top: 2.2% !important; gap: 1.2% !important; }
.orgw-field-showcase-badges span { padding: 1.3% 2.1% !important; font-size: clamp(10px, .72vw, 14px) !important; }
.orgw-field-showcase-actions { align-self: end !important; }
.orgw-field-upgrade-corner { min-width: 0 !important; width: 100% !important; padding: 9% 5% !important; font-size: clamp(13px, .92vw, 18px) !important; }
.orgw-field-upgrade-inline {
  height: 100% !important;
  min-height: 0 !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  grid-template-rows: 1fr 1fr !important;
  gap: 0 1.2% !important;
  padding: .7% 1.2% !important;
  border-radius: 18px !important;
}
.orgw-field-upgrade-inline .orgw-field-upgrade-kicker { grid-row: 1 / 3; align-self: center; }
.orgw-field-upgrade-inline strong { font-size: clamp(15px, 1.05vw, 21px) !important; }
.orgw-field-upgrade-inline small,
.orgw-field-upgrade-inline em { font-size: clamp(10px, .72vw, 14px) !important; }
.orgw-field-upgrade-inline em { grid-column: 2 / 4 !important; }
.orgw-field-crop-section {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) 4.5% 20% 9% !important;
  gap: 1.2% !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  padding: 1.1% 1.25% !important;
}
.orgw-field-panel-section-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2% !important;
  margin: 0 !important;
}
.orgw-field-panel-section-head h3 { margin: 0 !important; font-size: clamp(18px, 1.35vw, 27px) !important; }
.orgw-field-panel-section-head p { margin: .25em 0 0 !important; font-size: clamp(10px, .72vw, 14px) !important; }
.orgw-field-page-count {
  flex: 0 0 auto;
  min-width: 72px;
  padding: .45em .8em;
  border: 1px solid #d3ae67;
  border-radius: 999px;
  background: #f7e4b6;
  color: #5a3517;
  text-align: center;
  font-size: clamp(11px, .78vw, 15px);
  font-variant-numeric: tabular-nums;
}
.orgw-field-crop-carousel {
  display: grid !important;
  grid-template-columns: 5.5% minmax(0, 1fr) 5.5% !important;
  gap: 1.0% !important;
  align-items: stretch !important;
  min-height: 0 !important;
}
.orgw-field-crop-page {
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  touch-action: pan-y !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
.orgw-field-crop-page-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.25% !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
[data-org-world] button.orgw-field-crop-arrow,
[data-org-world] button.orgw-field-crop-arrow:hover,
[data-org-world] button.orgw-field-crop-arrow:focus,
[data-org-world] button.orgw-field-crop-arrow:focus-visible,
[data-org-world] button.orgw-field-crop-arrow:active {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 0 .12em !important;
  border: 2px solid #d4a94f !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #fff1bd, #e5ad3d) !important;
  box-shadow: 0 7px 14px rgba(83, 49, 13, .18) !important;
  color: #5b3414 !important;
  font: 900 clamp(30px, 2.7vw, 52px)/1 Georgia, serif !important;
  touch-action: manipulation !important;
}
[data-org-world] button.orgw-field-crop-arrow:disabled { opacity: .34 !important; filter: grayscale(.45); }
.orgw-field-crop-page .orgw-crop-choice-card {
  display: grid !important;
  grid-template-rows: 42% 12% minmax(0, 1fr) !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 3.2% 4% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-hero { min-height: 0 !important; height: 100% !important; }
.orgw-field-crop-page .orgw-crop-choice-card img { width: 70% !important; height: 100% !important; object-fit: contain !important; }
.orgw-field-crop-page .orgw-crop-choice-card strong { font-size: clamp(15px, 1.1vw, 22px) !important; }
.orgw-field-crop-page .orgw-crop-choice-stats { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 2% !important; }
.orgw-field-crop-page .orgw-crop-choice-stats span { padding: 3% !important; }
.orgw-field-crop-page .orgw-crop-choice-stats b,
.orgw-field-crop-page .orgw-crop-choice-stats em,
.orgw-field-crop-page .orgw-crop-choice-card small { font-size: clamp(8px, .61vw, 12px) !important; }
.orgw-crop-choice-placeholder { visibility: hidden !important; pointer-events: none !important; }
.orgw-field-crop-dots {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  min-height: 0 !important;
}
[data-org-world] button.orgw-field-crop-dot {
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  padding: 0 !important;
  border: 1px solid #93672f !important;
  border-radius: 50% !important;
  background: #c6a064 !important;
  box-shadow: inset 0 1px #f8dfad !important;
}
[data-org-world] button.orgw-field-crop-dot.is-active {
  background: #f0a90d !important;
  border-color: #fff0b1 !important;
  box-shadow: 0 0 0 2px #d28b08 !important;
}
.orgw-field-crop-section .orgw-field-selection-summary {
  min-height: 0 !important;
  height: 100% !important;
  grid-template-columns: 7% minmax(0, 1.3fr) repeat(3, minmax(0, .62fr)) !important;
  gap: .8% !important;
  padding: .6% 1% !important;
  overflow: hidden !important;
}
.orgw-field-crop-section .orgw-field-selection-hero { min-height: 0 !important; height: 100% !important; }
.orgw-field-crop-section .orgw-field-selection-hero img { width: 92% !important; height: 92% !important; }
.orgw-field-crop-section .orgw-field-selection-copy span { font-size: clamp(8px, .58vw, 11px) !important; }
.orgw-field-crop-section .orgw-field-selection-copy strong { font-size: clamp(16px, 1.2vw, 23px) !important; }
.orgw-field-crop-section .orgw-field-selection-copy p { margin: .15em 0 0 !important; font-size: clamp(8px, .58vw, 11px) !important; line-height: 1.15 !important; }
.orgw-field-crop-section .orgw-field-selection-metrics span { padding: 2% !important; font-size: clamp(8px, .57vw, 11px) !important; }
.orgw-field-crop-section .orgw-field-selection-metrics em { font-size: clamp(12px, .86vw, 17px) !important; }
.orgw-field-crop-section .orgw-field-panel-actions { min-height: 0 !important; height: 100% !important; margin: 0 !important; }
.orgw-field-crop-section .orgw-field-panel-actions > * { min-width: 220px !important; min-height: 0 !important; height: 100% !important; padding: 0 4% !important; }
.orgw-field-crop-section .orgw-field-panel-footnote { display: none !important; }

/* v0.1.39 card metric alignment repair. */
.orgw-field-crop-page .orgw-crop-choice-card {
  align-items: stretch !important;
  justify-items: stretch !important;
  gap: 0 !important;
  grid-template-rows: 48% 15% minmax(0, 37%) !important;
}
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-hero {
  margin: 0 !important;
  align-self: stretch !important;
}
.orgw-field-crop-page .orgw-crop-choice-card > strong {
  display: grid !important;
  place-items: center !important;
  align-self: stretch !important;
  text-align: center !important;
}
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-stats span {
  display: grid !important;
  grid-template-rows: auto auto !important;
  place-items: center !important;
  justify-content: stretch !important;
  align-content: center !important;
  gap: 3px !important;
  min-width: 0 !important;
  padding: 3% 2% !important;
  text-align: center !important;
  border-left: 1px solid rgba(128, 87, 37, .18);
}
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-stats span:first-child { border-left: 0; }
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-stats b,
.orgw-field-crop-page .orgw-crop-choice-card .orgw-crop-choice-stats em {
  display: block !important;
  width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 1.05 !important;
}
.orgw-field-crop-page .orgw-crop-choice-card {
  grid-template-columns: minmax(0, 1fr) !important;
}


/* ORG World 0.1.40 — approved full-size Market-style Pen and Field templates. */
.orgw-modal.is-animal-pen,
.orgw-modal.is-field-panel { padding: 0 !important; }
.orgw-modal.is-animal-pen .orgw-modal-card,
.orgw-modal.is-field-panel .orgw-modal-card {
  width: min(1672px, 99%) !important;
  height: auto !important;
  aspect-ratio: 1672 / 941 !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.orgw-modal.is-animal-pen .orgw-modal-close,
.orgw-modal.is-field-panel .orgw-modal-close { display:none !important; }
.orgw-modal.is-animal-pen [data-modal-content],
.orgw-modal.is-field-panel [data-modal-content] { width:100% !important; height:100% !important; overflow:visible !important; padding:0 !important; }

/* Animal Pen: exact uploaded template plus uploaded purchase animals. */
.orgw-animal-pen-stage { overflow:visible !important; }
.orgw-animal-pen-card { grid-template-rows: 13% minmax(0,1fr) 9% 10% 16% !important; padding: 1.5% 5% 3.5% !important; }
.orgw-animal-pen-card > strong { font-size: 25px !important; }
.orgw-animal-pen-card > img { width: 94% !important; height: 100% !important; object-fit:contain !important; }
.orgw-animal-pen-card > span { font-size: 15px !important; }
.orgw-animal-pen-card > b { font-size: 23px !important; }
[data-org-world] .orgw-animal-pen-card-actions button { font-size: 21px !important; border-radius: 10px !important; }
.orgw-animal-pen-message strong { font-size: 28px !important; }
.orgw-animal-pen-message span { font-size: 18px !important; }
.orgw-animal-pen-capacity strong { font-size: 21px !important; }
.orgw-animal-pen-capacity span { font-size: 16px !important; }
.orgw-animal-pen-capacity b { font-size: 19px !important; }

/* Field: exact uploaded Plant Field template with dynamic four-card pages. */
.orgw-field-template-stage { position:relative; width:100%; height:100%; overflow:visible; color:#4b2d15; user-select:none; touch-action:pan-x; }
.orgw-field-template-art { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; }
.orgw-field-template-art.is-fallback { border-radius:4%; background:#f8e6bd; }
.orgw-field-template-close,
.orgw-field-template-arrow { position:absolute; z-index:20; min-width:0 !important; min-height:0 !important; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; opacity:.02; }
.orgw-field-template-close { left:85.3%; top:3.4%; width:6.8%; height:10.5%; }
.orgw-field-template-arrow.is-prev { left:7.5%; top:56.2%; width:7.4%; height:12.4%; }
.orgw-field-template-arrow.is-next { left:85.2%; top:56.2%; width:7.4%; height:12.4%; }
.orgw-field-template-arrow[disabled] { cursor:default; }
.orgw-field-template-message { position:absolute; left:43.3%; top:14.1%; width:40.5%; height:18.5%; z-index:5; display:grid; align-content:center; gap:7px; padding:0 3%; text-align:left; }
.orgw-field-template-message strong { font:900 30px/1.08 Georgia,serif; color:#4b2d15; }
.orgw-field-template-message span { font-size:20px; line-height:1.25; font-weight:700; color:#6b4928; }
[data-org-world] button.orgw-field-template-upgrade { position:absolute; left:14.5%; top:35.6%; width:70.6%; height:8.4%; z-index:7; display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-rows:1fr 1fr; align-items:center; column-gap:18px; padding:0 4% !important; min-width:0 !important; min-height:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#573514 !important; text-align:left !important; }
.orgw-field-template-upgrade strong { grid-row:1/3; font:900 22px/1 Georgia,serif; text-transform:uppercase; }
.orgw-field-template-upgrade span { align-self:end; font-size:21px; font-weight:900; }
.orgw-field-template-upgrade small { align-self:start; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px !important; }
.orgw-field-template-cards { position:absolute; left:15.9%; top:51.6%; width:68.4%; height:27.4%; z-index:8; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.3%; touch-action:pan-y; }
[data-org-world] button.orgw-field-template-card { display:grid; grid-template-rows:13% minmax(0,1fr) 10% 15%; align-items:center; justify-items:center; min-width:0 !important; min-height:0 !important; width:100%; height:100%; padding:2.5% 5% 3% !important; border:0 !important; border-radius:8px !important; background:transparent !important; box-shadow:none !important; color:#4b2d15 !important; text-align:center; overflow:hidden; }
.orgw-field-template-card > strong { font:900 24px/1 Georgia,serif; white-space:nowrap; }
.orgw-field-template-card > img { width:84%; height:100%; object-fit:contain; filter:drop-shadow(0 5px 4px rgba(73,43,15,.16)); }
.orgw-field-template-card > span { width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; font-weight:800; color:#795735; }
.orgw-field-template-metrics { width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2%; }
.orgw-field-template-metrics b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
.orgw-field-template-card.is-selected { outline:5px solid rgba(117,151,36,.78) !important; outline-offset:-7px; background:rgba(215,235,143,.14) !important; }
.orgw-field-template-card.is-locked { filter:grayscale(.5); opacity:.58; }
.orgw-field-template-card.is-empty { pointer-events:none; }
.orgw-field-template-dots { position:absolute; left:41%; top:80.1%; width:18%; height:4%; z-index:9; display:flex; justify-content:center; align-items:center; gap:10%; }
[data-org-world] button.orgw-field-template-dot { width:15px !important; height:15px !important; min-width:15px !important; min-height:15px !important; padding:0 !important; border-radius:50% !important; border:1px solid #9d7139 !important; background:#c49a5b !important; box-shadow:inset 0 1px #f8dfae !important; }
[data-org-world] button.orgw-field-template-dot.is-active { background:#f0a90d !important; border-color:#fff0b1 !important; box-shadow:0 0 0 2px #d28b08 !important; }
.orgw-field-template-selected { position:absolute; left:14.7%; top:84.2%; width:22.5%; height:9.2%; z-index:8; display:grid; grid-template-columns:27% minmax(0,1fr); align-items:center; gap:5%; padding:0 2%; }
.orgw-field-template-selected img { width:100%; height:86%; object-fit:contain; }
.orgw-field-template-selected span { display:block; font-size:15px; font-weight:800; color:#76542d; }
.orgw-field-template-selected strong { display:block; font:900 22px/1.05 Georgia,serif; }
[data-org-world] button.orgw-field-template-primary { position:absolute; left:38.1%; top:85.2%; width:25.1%; height:7.7%; z-index:9; min-width:0 !important; min-height:0 !important; padding:0 !important; border:2px solid #7e651d !important; border-radius:24px !important; background:linear-gradient(180deg,#a8c73c,#628d17) !important; box-shadow:0 5px 10px rgba(68,39,10,.24),inset 0 2px rgba(255,255,255,.35) !important; color:#fffbe7 !important; font:900 30px/1 Georgia,serif !important; text-shadow:0 2px #3e5b0b; }
[data-org-world] button.orgw-field-template-primary.is-secondary { background:linear-gradient(180deg,#ecd29b,#bd9252) !important; color:#4d3218 !important; text-shadow:none; }
.orgw-field-template-status { position:absolute; left:16%; top:51.5%; width:68%; height:27.8%; z-index:8; display:grid; grid-template-columns:30% minmax(0,1fr); align-items:center; gap:4%; padding:2% 6%; border-radius:24px; background:rgba(255,247,222,.9); box-shadow:inset 0 0 0 3px rgba(151,101,39,.28); }
.orgw-field-template-status img { width:100%; height:100%; object-fit:contain; }
.orgw-field-template-status strong { display:block; font:900 34px/1.05 Georgia,serif; }
.orgw-field-template-status span { display:block; margin-top:8px; font-size:21px; font-weight:800; }
.orgw-field-template-status small { display:block; margin-top:8px; font-size:16px !important; }

/* Old animated sprite sheets stay in the world, above the background and behind the front fence. */
.orgw-shared-pen-zone { z-index:84 !important; isolation:isolate; overflow:visible !important; }
.orgw-shared-pen-zone .orgw-pen-canvas { display:block !important; visibility:visible !important; opacity:1 !important; z-index:2 !important; transform:translateZ(0) !important; }
.orgw-world-pen-foreground { display:block !important; z-index:86 !important; }

/* ORG World 0.1.41 — new uploaded Plant Field / Animal Pen / Market Cart templates (1586×992). */
.orgw-modal.is-market-cart,
.orgw-modal.is-animal-pen,
.orgw-modal.is-field-panel { padding: 0 !important; }
.orgw-modal.is-market-cart .orgw-modal-card,
.orgw-modal.is-animal-pen .orgw-modal-card,
.orgw-modal.is-field-panel .orgw-modal-card {
  width: min(1586px, 99vw) !important;
  aspect-ratio: 1586 / 992 !important;
  max-width: 99vw !important;
  max-height: 98vh !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.orgw-market-template-stage,
.orgw-animal-pen-stage,
.orgw-field-template-stage { aspect-ratio: 1586 / 992 !important; }

/* Market Cart template alignment */
.orgw-market-template-close { left: 88.2% !important; top: 5.0% !important; width: 5.2% !important; height: 9.0% !important; }
.orgw-market-template-arrow.is-prev { left: 6.2% !important; top: 50.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-market-template-arrow.is-next { left: 88.0% !important; top: 50.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-market-template-message { left: 42.5% !important; top: 18.8% !important; width: 42.0% !important; height: 12.5% !important; }
.orgw-market-template-cards { left: 10.8% !important; top: 35.8% !important; width: 78.4% !important; height: 44.6% !important; }
.orgw-market-template-dots { left: 42.4% !important; top: 81.2% !important; width: 15% !important; }
.orgw-market-template-footer { left: 27.0% !important; top: 86.0% !important; width: 46% !important; font-size: clamp(.52rem, .98vw, .92rem) !important; }

/* Animal Pen template alignment */
.orgw-animal-pen-close { left: 88.1% !important; top: 5.0% !important; width: 5.2% !important; height: 9.0% !important; }
.orgw-animal-pen-arrow.is-prev { left: 6.0% !important; top: 51.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-animal-pen-arrow.is-next { left: 88.0% !important; top: 51.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-animal-pen-message { left: 45.0% !important; top: 16.0% !important; width: 38.5% !important; height: 12.5% !important; }
.orgw-animal-pen-capacity { left: 44.8% !important; top: 28.5% !important; width: 39.0% !important; height: 9.0% !important; }
.orgw-animal-pen-cards { left: 11.8% !important; top: 42.5% !important; width: 76.4% !important; height: 37.5% !important; }
.orgw-animal-pen-dots { left: 42.0% !important; top: 81.2% !important; width: 16% !important; }

/* Plant Field template alignment */
.orgw-field-template-close { left: 88.1% !important; top: 5.0% !important; width: 5.2% !important; height: 9.0% !important; }
.orgw-field-template-arrow.is-prev { left: 6.0% !important; top: 51.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-field-template-arrow.is-next { left: 88.0% !important; top: 51.0% !important; width: 6.0% !important; height: 12.0% !important; }
.orgw-field-template-message { left: 42.5% !important; top: 14.8% !important; width: 41.5% !important; height: 18.0% !important; }
[data-org-world] button.orgw-field-template-upgrade { left: 13.3% !important; top: 35.0% !important; width: 73.4% !important; height: 8.6% !important; }
.orgw-field-template-cards { left: 14.1% !important; top: 49.8% !important; width: 71.8% !important; height: 28.8% !important; }
.orgw-field-template-status { left: 14.1% !important; top: 49.8% !important; width: 71.8% !important; height: 28.8% !important; }
.orgw-field-template-dots { left: 42.0% !important; top: 80.8% !important; width: 16% !important; }
.orgw-field-template-selected { left: 14.2% !important; top: 85.0% !important; width: 23.0% !important; height: 7.0% !important; }
[data-org-world] button.orgw-field-template-primary { left: 39.0% !important; top: 85.2% !important; width: 22.5% !important; height: 6.9% !important; }

/* ORG World 0.1.42 — popup polish: opaque panel files, no checkerboard background, cleaner alignment. */
.orgw-modal.is-market-cart .orgw-modal-card,
.orgw-modal.is-animal-pen .orgw-modal-card,
.orgw-modal.is-field-panel .orgw-modal-card {
  width: min(1586px, 99.2vw) !important;
  max-width: 99.2vw !important;
  max-height: 98.8vh !important;
}

/* Market Cart: use the baked intro/footer from the art only, avoid duplicate overlay text. */
.orgw-market-template-message,
.orgw-market-template-footer { display:none !important; }
.orgw-market-template-cards { left: 11.8% !important; top: 35.2% !important; width: 76.0% !important; height: 41.2% !important; }
.orgw-market-template-dots { left: 42.2% !important; top: 79.8% !important; width: 15.5% !important; }
.orgw-market-template-arrow.is-prev { left: 6.5% !important; top: 50.3% !important; width: 5.8% !important; height: 11.4% !important; }
.orgw-market-template-arrow.is-next { left: 87.6% !important; top: 50.3% !important; width: 5.8% !important; height: 11.4% !important; }

/* Plant Field: larger, cleaner crop cards and less overlap with arrows/button. */
.orgw-field-template-message { left: 42.8% !important; top: 14.6% !important; width: 40.8% !important; height: 17.2% !important; }
.orgw-field-template-message strong { font-size: 28px !important; }
.orgw-field-template-message span { font-size: 17px !important; }
[data-org-world] button.orgw-field-template-upgrade { left: 13.6% !important; top: 34.8% !important; width: 72.6% !important; height: 8.4% !important; }
.orgw-field-template-upgrade strong { font-size: 20px !important; }
.orgw-field-template-upgrade span { font-size: 19px !important; }
.orgw-field-template-upgrade small { font-size: 14px !important; }
.orgw-field-template-arrow.is-prev { left: 6.8% !important; top: 51.2% !important; width: 5.8% !important; height: 11.6% !important; }
.orgw-field-template-arrow.is-next { left: 87.5% !important; top: 51.2% !important; width: 5.8% !important; height: 11.6% !important; }
.orgw-field-template-cards { left: 16.2% !important; top: 50.1% !important; width: 68.2% !important; height: 28.0% !important; gap: 1.1% !important; }
[data-org-world] button.orgw-field-template-card { padding: 2.2% 4% 2.6% !important; }
.orgw-field-template-card > strong { font-size: 19px !important; }
.orgw-field-template-card > img { width: 78% !important; }
.orgw-field-template-card > span { font-size: 13px !important; white-space: normal !important; line-height: 1.1 !important; }
.orgw-field-template-metrics b { font-size: 13px !important; }
.orgw-field-template-dots { left: 42.2% !important; top: 80.0% !important; width: 16% !important; }
.orgw-field-template-selected { left: 15.4% !important; top: 84.6% !important; width: 22.8% !important; height: 7.2% !important; }
.orgw-field-template-selected strong { font-size: 18px !important; }
.orgw-field-template-selected span { font-size: 13px !important; }
[data-org-world] button.orgw-field-template-primary { left: 38.7% !important; top: 84.9% !important; width: 23.0% !important; height: 7.0% !important; font-size: 23px !important; }
.orgw-field-template-status { left: 16.0% !important; top: 50.2% !important; width: 68.0% !important; height: 27.4% !important; }
.orgw-field-template-status strong { font-size: 28px !important; }
.orgw-field-template-status span { font-size: 18px !important; }
.orgw-field-template-status small { font-size: 14px !important; }

/* Animal Pen: cleaner card sizing and smaller buttons to avoid the long stretched bars. */
.orgw-animal-pen-message { left: 44.7% !important; top: 15.8% !important; width: 38.8% !important; height: 12.4% !important; }
.orgw-animal-pen-message strong { font-size: 26px !important; }
.orgw-animal-pen-message span { font-size: 16px !important; }
.orgw-animal-pen-capacity { left: 44.6% !important; top: 28.4% !important; width: 39.2% !important; height: 9.0% !important; }
.orgw-animal-pen-capacity strong { font-size: 20px !important; }
.orgw-animal-pen-capacity span { font-size: 14px !important; }
.orgw-animal-pen-capacity b { font-size: 17px !important; }
.orgw-animal-pen-arrow.is-prev { left: 6.5% !important; top: 51.0% !important; width: 5.8% !important; height: 11.6% !important; }
.orgw-animal-pen-arrow.is-next { left: 87.6% !important; top: 51.0% !important; width: 5.8% !important; height: 11.6% !important; }
.orgw-animal-pen-cards { left: 12.8% !important; top: 42.5% !important; width: 74.4% !important; height: 36.2% !important; }
.orgw-animal-pen-card { grid-template-rows: 13% 37% 12% 10% 12% !important; padding: 1.2% 4.2% 2.4% !important; }
.orgw-animal-pen-card > strong { font-size: 20px !important; }
.orgw-animal-pen-card > img { width: 76% !important; height: 100% !important; }
.orgw-animal-pen-card > span { font-size: 12px !important; line-height: 1.1 !important; white-space: normal !important; }
.orgw-animal-pen-card > b { font-size: 18px !important; }
.orgw-animal-pen-card-actions { width: 92% !important; gap: 6px !important; }
[data-org-world] .orgw-animal-pen-card-actions button { height: 34px !important; padding: 0 10px !important; font-size: 15px !important; border-radius: 9px !important; }
[data-org-world] .orgw-animal-pen-manage { flex: 0 1 40% !important; }
.orgw-animal-pen-dots { left: 42.2% !important; top: 79.8% !important; width: 16% !important; }


/* ORG World 0.1.43 — reliable Android animal animation using pre-extracted OLD sprite-sheet frames. */
body.orgw-mobile-app .orgw-shared-pen-zone .orgw-pen-canvas {
  display: none !important;
}
body.orgw-mobile-app .orgw-shared-pen-zone .orgw-pen-animal-sprite.is-live-frame:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: var(--orgw-live-animal-left, 50%) !important;
  top: var(--orgw-live-animal-top, 64%) !important;
  right: auto !important;
  bottom: auto !important;
  width: auto !important;
  height: var(--orgw-live-animal-height, 28%) !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: translate(-50%, -100%) translateY(var(--orgw-live-animal-bob, 0px)) rotate(var(--orgw-live-animal-angle, 0rad)) !important;
  transform-origin: center bottom !important;
  animation: none !important;
  filter: drop-shadow(0 7px 6px rgba(42,25,8,.30)) !important;
  pointer-events: none !important;
  z-index: 85 !important;
}
body.orgw-mobile-app .orgw-world-pen-foreground {
  z-index: 86 !important;
}

/* ORG World 0.1.46 — larger tutorial card with horizontal stage swipe and clearer copy. */
.orgw-modal.is-tutorial-story {
  padding: .8vh .9vw !important;
}
.orgw-modal.is-tutorial-story .orgw-modal-card {
  width: min(1320px, 96vw) !important;
  max-width: 96vw !important;
  max-height: 94vh !important;
  padding: clamp(18px, 1.65vw, 26px) !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, rgba(255,253,247,.992), rgba(248,239,220,.988)) !important;
  box-shadow: 0 28px 72px rgba(37,22,8,.48) !important;
}
.orgw-modal.is-tutorial-story .orgw-modal-close {
  top: 2.1% !important;
  right: 2.1% !important;
  z-index: 30 !important;
}
.orgw-visitor-popup.is-tutorial-story {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 1.2vw, 18px);
  width: 100%;
}
.orgw-tutorial-story-main {
  display: grid;
  grid-template-columns: clamp(130px, 13vw, 180px) minmax(0, 1fr);
  gap: clamp(18px, 2vw, 30px);
  align-items: center;
  padding: 0 clamp(4px, .6vw, 8px);
}
.orgw-tutorial-story-main > img {
  width: 100%;
  max-width: 180px;
  max-height: 230px;
  object-fit: contain;
  justify-self: center;
  filter: drop-shadow(0 12px 10px rgba(64,39,13,.18));
}
.orgw-tutorial-story-copy {
  min-width: 0;
  padding-right: clamp(10px, 1.2vw, 18px);
}
.orgw-tutorial-story-copy h2 {
  margin: 0 0 10px;
  font-size: clamp(34px, 2.7vw, 48px) !important;
  line-height: 1.05;
  color: #4c311b;
}
.orgw-tutorial-story-copy > p {
  margin: 0;
  max-width: 860px;
  color: #65482e;
  font-size: clamp(18px, 1.18vw, 22px) !important;
  line-height: 1.42 !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective {
  margin-top: 14px;
  padding: 14px 18px;
  border-left-width: 5px;
  border-radius: 15px;
  background: linear-gradient(180deg, rgba(255,248,228,.98), rgba(248,232,193,.96));
  box-shadow: inset 0 0 0 1px rgba(183,125,46,.18);
}
.orgw-tutorial-story-copy .orgw-tutorial-objective strong {
  color: #6f4b20;
  font-size: clamp(12px, .78vw, 14px) !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective span {
  margin-top: 5px;
  color: #44301c;
  font-size: clamp(18px, 1.12vw, 22px) !important;
}
.orgw-tutorial-roadmap {
  display: grid;
  gap: 10px;
  padding: 14px 14px 12px;
  border: 1px solid rgba(154,105,48,.22);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,251,240,.94), rgba(244,227,193,.90));
  box-shadow: inset 0 1px rgba(255,255,255,.86);
}
.orgw-tutorial-roadmap > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 0 4px;
}
.orgw-tutorial-roadmap > header strong {
  color: #573719;
  font-size: clamp(14px, .92vw, 17px);
  letter-spacing: .055em;
  text-transform: uppercase;
}
.orgw-tutorial-roadmap > header span {
  color: #866747;
  font-size: clamp(12px, .76vw, 14px);
  text-align: right;
}
.orgw-tutorial-roadmap-track {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  padding: 2px 4px 8px;
  scrollbar-width: thin;
}
.orgw-tutorial-roadmap-step {
  position: relative;
  flex: 0 0 clamp(130px, 11vw, 148px);
  min-width: clamp(130px, 11vw, 148px);
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 6px;
  padding: 4px 2px 2px;
  text-align: center;
  color: #5d4025;
  scroll-snap-align: center;
}
.orgw-tutorial-roadmap-icon {
  position: relative;
  width: clamp(78px, 6.8vw, 92px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 3px solid #d1b681;
  border-radius: 50%;
  background: radial-gradient(circle at 45% 35%, #fffaf0, #ead7aa);
  box-shadow: 0 7px 15px rgba(82,51,17,.15), inset 0 0 0 3px rgba(255,255,255,.72);
  overflow: visible;
}
.orgw-tutorial-roadmap-icon img {
  width: 72%;
  height: 72%;
  object-fit: contain;
  filter: drop-shadow(0 5px 4px rgba(69,42,15,.20));
}
.orgw-tutorial-roadmap-icon > span {
  color: #755124;
  font: 900 clamp(24px, 2.3vw, 34px)/1 Georgia, serif;
}
.orgw-tutorial-roadmap-icon b {
  position: absolute;
  right: -3px;
  bottom: -3px;
  min-width: 24px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 2px solid #fff8dd;
  border-radius: 50%;
  background: #b79b61;
  color: #fff;
  font-size: 12px;
  box-shadow: 0 3px 8px rgba(60,35,10,.25);
}
.orgw-tutorial-roadmap-step > strong {
  max-width: 100%;
  color: inherit;
  font-size: clamp(12px, .88vw, 15px);
  line-height: 1.14;
}
.orgw-tutorial-roadmap-step > small {
  color: #907353;
  font-size: clamp(10px, .7vw, 12px) !important;
  line-height: 1.05;
}
.orgw-tutorial-roadmap-step.is-complete .orgw-tutorial-roadmap-icon {
  border-color: #6f9b39;
  background: radial-gradient(circle at 45% 35%, #fbffe9, #dfe9b7);
}
.orgw-tutorial-roadmap-step.is-complete .orgw-tutorial-roadmap-icon b {
  background: #6e9d35;
}
.orgw-tutorial-roadmap-step.is-complete > strong,
.orgw-tutorial-roadmap-step.is-complete > small {
  color: #53752d;
}
.orgw-tutorial-roadmap-step.is-current .orgw-tutorial-roadmap-icon {
  border-color: #d69b2d;
  background: radial-gradient(circle at 45% 35%, #fff9dc, #f0d083);
  box-shadow: 0 0 0 4px rgba(224,164,47,.18), 0 9px 20px rgba(82,51,17,.20), inset 0 0 0 3px rgba(255,255,255,.75);
}
.orgw-tutorial-roadmap-step.is-current .orgw-tutorial-roadmap-icon b {
  background: #d79622;
}
.orgw-tutorial-roadmap-step.is-current > strong {
  color: #6b431c;
}
.orgw-tutorial-roadmap-step.is-upcoming {
  opacity: .68;
}
.orgw-tutorial-roadmap-arrow {
  flex: 0 0 auto;
  color: #b79258;
  font: 900 34px/1 Georgia, serif;
  transform: translateY(24px);
}
.orgw-tutorial-story-actions {
  justify-content: center;
  margin-top: 2px;
  padding-bottom: 0;
}
.orgw-tutorial-story-actions button {
  min-width: clamp(160px, 14vw, 210px);
}

@media (max-width: 860px) {
  .orgw-modal.is-tutorial-story .orgw-modal-card {
    width: 97vw !important;
    max-width: 97vw !important;
    max-height: 95vh !important;
    padding: 14px !important;
  }
  .orgw-tutorial-story-main {
    grid-template-columns: 112px minmax(0,1fr);
    gap: 14px;
  }
  .orgw-tutorial-story-main > img {
    max-height: 160px;
  }
  .orgw-tutorial-roadmap {
    padding: 10px;
  }
  .orgw-tutorial-roadmap > header {
    display: grid;
    gap: 4px;
  }
  .orgw-tutorial-roadmap > header span {
    text-align: left;
  }
  .orgw-tutorial-roadmap-step {
    flex-basis: 122px;
    min-width: 122px;
  }
  .orgw-tutorial-roadmap-arrow {
    font-size: 26px;
    transform: translateY(22px);
  }
}

@media (max-width: 620px) {
  .orgw-tutorial-story-main {
    grid-template-columns: 90px minmax(0,1fr);
    gap: 12px;
    align-items: start;
  }
  .orgw-tutorial-story-main > img {
    max-width: 90px;
    max-height: 120px;
  }
  .orgw-tutorial-story-copy {
    padding-right: 0;
  }
  .orgw-tutorial-story-copy h2 {
    font-size: clamp(30px, 7.2vw, 38px) !important;
  }
  .orgw-tutorial-story-copy > p,
  .orgw-tutorial-story-copy .orgw-tutorial-objective span {
    font-size: clamp(17px, 4.1vw, 19px) !important;
  }
  .orgw-tutorial-roadmap-track {
    padding-bottom: 6px;
  }
  .orgw-tutorial-roadmap-step {
    flex-basis: 118px;
    min-width: 118px;
  }
  .orgw-tutorial-roadmap-icon {
    width: 74px;
  }
  .orgw-tutorial-roadmap-arrow {
    font-size: 24px;
    transform: translateY(21px);
  }
  .orgw-tutorial-story-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .orgw-tutorial-story-actions button {
    width: 100%;
    min-width: 0;
  }
}



/* ORG World 0.1.47 — clearer top HUD and full tutorial view without vertical scrolling. */
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-topbar {
  left: 1.3% !important;
  top: 1.12% !important;
  width: 67.8% !important;
  height: 9.55% !important;
  gap: .72% !important;
}
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-utility-buttons {
  left: 70.15% !important;
  top: 1.12% !important;
  width: 27.95% !important;
  height: 9.55% !important;
  gap: 1.3% !important;
  grid-template-columns: minmax(0,1.42fr) minmax(0,.98fr) minmax(0,.37fr) !important;
}
.orgw-fixed-hud .orgw-stat-value {
  top: 35% !important;
  bottom: 24% !important;
  right: 5% !important;
  font-size: clamp(23px, 1.34vw, 31px) !important;
  letter-spacing: -.01em !important;
}
.orgw-fixed-hud .orgw-stat-coins .orgw-stat-value { left: 60% !important; }
.orgw-fixed-hud .orgw-stat-wood .orgw-stat-value { left: 62.4% !important; }
.orgw-fixed-hud .orgw-stat-meat .orgw-stat-value { left: 60.5% !important; }
.orgw-fixed-hud .orgw-stat-level .orgw-stat-value { left: 60% !important; }
.orgw-fixed-hud .orgw-stat-xp .orgw-stat-value { left: 60% !important; }
.orgw-harvest-pass-button span {
  left: 42% !important;
  right: 8% !important;
  bottom: 12% !important;
  font-size: clamp(14px, .88vw, 19px) !important;
}
.orgw-needs-values {
  left: 9% !important;
  right: 9% !important;
  bottom: 10.5% !important;
  gap: 4.5% !important;
  font-size: clamp(12px, .72vw, 16px) !important;
}
.orgw-modal.is-tutorial-story .orgw-modal-card {
  width: min(1440px, 97vw) !important;
  max-width: 97vw !important;
  max-height: 92vh !important;
  padding: clamp(16px, 1.35vw, 22px) !important;
}
.orgw-visitor-popup.is-tutorial-story {
  gap: clamp(10px, .95vw, 14px);
}
.orgw-tutorial-story-main {
  grid-template-columns: clamp(108px, 10vw, 146px) minmax(0, 1fr);
  gap: clamp(14px, 1.35vw, 22px);
  align-items: start;
}
.orgw-tutorial-story-main > img {
  max-width: 146px;
  max-height: 188px;
}
.orgw-tutorial-story-copy {
  padding-right: 4px;
}
.orgw-tutorial-story-copy h2 {
  margin: 0 0 8px;
  font-size: clamp(37px, 2.35vw, 50px) !important;
}
.orgw-tutorial-story-copy > p {
  max-width: none;
  font-size: clamp(19px, 1.04vw, 22px) !important;
  line-height: 1.33 !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective {
  margin-top: 12px;
  padding: 12px 16px;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective strong {
  font-size: clamp(11px, .74vw, 13px) !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective span {
  font-size: clamp(20px, 1.06vw, 23px) !important;
}
.orgw-tutorial-roadmap {
  gap: 8px;
  padding: 12px 12px 10px;
}
.orgw-tutorial-roadmap > header strong {
  font-size: clamp(15px, .96vw, 18px);
}
.orgw-tutorial-roadmap > header span {
  font-size: clamp(12px, .72vw, 13px);
}
.orgw-tutorial-roadmap-track {
  gap: 6px;
  padding: 2px 4px 4px;
}
.orgw-tutorial-roadmap-step {
  flex: 0 0 clamp(122px, 9.5vw, 138px);
  min-width: clamp(122px, 9.5vw, 138px);
  gap: 4px;
}
.orgw-tutorial-roadmap-icon {
  width: clamp(70px, 5.9vw, 82px);
  border-width: 2px;
}
.orgw-tutorial-roadmap-icon b {
  min-width: 22px;
  font-size: 11px;
}
.orgw-tutorial-roadmap-step > strong {
  font-size: clamp(13px, .84vw, 15px);
  line-height: 1.08;
}
.orgw-tutorial-roadmap-step > small {
  font-size: clamp(11px, .72vw, 13px) !important;
  line-height: 1.02;
  font-weight: 800;
}
.orgw-tutorial-roadmap-arrow {
  font-size: 28px;
  transform: translateY(20px);
}
.orgw-tutorial-story-actions {
  margin-top: 0;
}
.orgw-tutorial-story-actions button {
  min-height: 56px !important;
  font-size: clamp(18px, 1vw, 22px) !important;
}


/* ORG World 0.1.48 — near-fullscreen tutorial and top HUD shifted left. */
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-topbar {
  left: .10% !important;
  top: .95% !important;
  width: 67.8% !important;
  height: 9.55% !important;
  gap: .72% !important;
}
.orgw-game:not(.is-layout-editor) .orgw-fixed-hud .orgw-utility-buttons {
  left: 68.55% !important;
  top: .95% !important;
  width: 28.15% !important;
  height: 9.55% !important;
  gap: 1.25% !important;
  grid-template-columns: minmax(0,1.42fr) minmax(0,.98fr) minmax(0,.37fr) !important;
}
.orgw-fixed-hud .orgw-stat-value {
  top: 34.5% !important;
  bottom: 24.5% !important;
  right: 15% !important;
  font-size: clamp(23px, 1.34vw, 31px) !important;
}
.orgw-fixed-hud .orgw-stat-coins .orgw-stat-value { left: 47% !important; }
.orgw-fixed-hud .orgw-stat-wood .orgw-stat-value { left: 49% !important; }
.orgw-fixed-hud .orgw-stat-meat .orgw-stat-value { left: 47.5% !important; }
.orgw-fixed-hud .orgw-stat-level .orgw-stat-value { left: 46.5% !important; }
.orgw-fixed-hud .orgw-stat-xp .orgw-stat-value { left: 47% !important; }

.orgw-modal.is-tutorial-story {
  padding: .45vh .45vw !important;
}
.orgw-modal.is-tutorial-story .orgw-modal-card {
  width: min(1820px, 98.5vw) !important;
  height: min(1000px, 95vh) !important;
  max-width: 98.5vw !important;
  max-height: 95vh !important;
  padding: clamp(24px, 1.8vw, 36px) !important;
  overflow: hidden !important;
  border-radius: 30px !important;
}
.orgw-visitor-popup.is-tutorial-story {
  height: 100%;
  grid-template-rows: minmax(0, 37%) minmax(0, 1fr) auto;
  gap: clamp(14px, 1.25vw, 22px);
}
.orgw-tutorial-story-main {
  grid-template-columns: clamp(165px, 14vw, 230px) minmax(0, 1fr);
  gap: clamp(24px, 2.2vw, 38px);
  align-items: center;
  min-height: 0;
}
.orgw-tutorial-story-main > img {
  width: 100%;
  max-width: 225px;
  max-height: 305px;
}
.orgw-tutorial-story-copy h2 {
  margin: 0 0 12px;
  font-size: clamp(46px, 3.15vw, 66px) !important;
}
.orgw-tutorial-story-copy > p {
  font-size: clamp(23px, 1.45vw, 29px) !important;
  line-height: 1.38 !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective {
  margin-top: 18px;
  padding: 18px 22px;
  border-left-width: 6px;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective strong {
  font-size: clamp(15px, .9vw, 18px) !important;
}
.orgw-tutorial-story-copy .orgw-tutorial-objective span {
  margin-top: 6px;
  font-size: clamp(24px, 1.48vw, 30px) !important;
}
.orgw-tutorial-roadmap {
  min-height: 0;
  gap: 12px;
  padding: 18px 18px 14px;
  border-radius: 23px;
}
.orgw-tutorial-roadmap > header strong {
  font-size: clamp(18px, 1.12vw, 22px);
}
.orgw-tutorial-roadmap > header span {
  font-size: clamp(15px, .9vw, 18px);
}
.orgw-tutorial-roadmap-track {
  align-items: center;
  min-height: 0;
  gap: 12px;
  padding: 6px 8px 10px;
}
.orgw-tutorial-roadmap-step {
  flex: 0 0 clamp(165px, 12.2vw, 205px);
  min-width: clamp(165px, 12.2vw, 205px);
  gap: 8px;
}
.orgw-tutorial-roadmap-icon {
  width: clamp(105px, 8.3vw, 135px);
  border-width: 3px;
}
.orgw-tutorial-roadmap-icon b {
  min-width: 30px;
  font-size: 15px;
}
.orgw-tutorial-roadmap-step > strong {
  font-size: clamp(16px, 1.04vw, 21px);
  line-height: 1.12;
}
.orgw-tutorial-roadmap-step > small {
  font-size: clamp(14px, .88vw, 17px) !important;
  font-weight: 900;
}
.orgw-tutorial-roadmap-arrow {
  font-size: 40px;
  transform: translateY(28px);
}
.orgw-tutorial-story-actions {
  margin: 0;
  gap: 18px;
}
.orgw-tutorial-story-actions button {
  min-width: clamp(210px, 16vw, 280px);
  min-height: 62px !important;
  font-size: clamp(21px, 1.25vw, 26px) !important;
}

/* ORG World 0.1.49 — fixed help HUD, circular market dots, clearer Season Goals and magical achievements. */
.orgw-fixed-hud .orgw-scene-note,
.orgw-fixed-hud [data-layout-block="scene_note"] {
  position: absolute !important;
  left: 2.2% !important;
  right: auto !important;
  top: auto !important;
  bottom: 2.25% !important;
  width: clamp(560px, 35vw, 720px) !important;
  min-width: clamp(560px, 35vw, 720px) !important;
  max-width: 44% !important;
  height: auto !important;
  min-height: 96px !important;
  padding: 18px 28px 18px 88px !important;
  display: flex !important;
  align-items: center !important;
  border: 3px solid rgba(112,75,31,.55) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, rgba(255,253,241,.99), rgba(244,225,188,.98)) !important;
  box-shadow: 0 14px 36px rgba(38,23,7,.34), inset 0 1px rgba(255,255,255,.9) !important;
  color: #3e2814 !important;
  font-size: clamp(24px, 1.32vw, 29px) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  transform: none !important;
  z-index: 20 !important;
  pointer-events: auto !important;
}
.orgw-fixed-hud .orgw-scene-note .orgw-tip-icon {
  position: absolute !important;
  left: 22px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 52px !important;
  height: 52px !important;
  display: grid !important;
  place-items: center !important;
  border: 3px solid #edf4c8 !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg,#87ad42,#587e25) !important;
  color: #fff !important;
  box-shadow: 0 5px 14px rgba(45,72,19,.35) !important;
  font: italic 900 34px/1 Georgia, serif !important;
}
.orgw-fixed-hud .orgw-scene-note.is-collapsed,
.orgw-fixed-hud [data-layout-block="scene_note"].is-collapsed {
  left: 2.2% !important;
  bottom: 2.25% !important;
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  height: 76px !important;
  min-height: 76px !important;
  padding: 0 !important;
  border-radius: 50% !important;
}
.orgw-fixed-hud .orgw-scene-note.is-collapsed .orgw-tip-icon {
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%,-50%) !important;
  width: 56px !important;
  height: 56px !important;
}

/* Generic modal button rules must never stretch carousel dots into pills. */
[data-org-world] button.orgw-market-template-dot,
[data-org-world] button.orgw-market-template-dot:hover,
[data-org-world] button.orgw-market-template-dot:focus,
[data-org-world] button.orgw-market-template-dot:focus-visible,
[data-org-world] button.orgw-market-template-dot:active {
  flex: 0 0 18px !important;
  display: block !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 2px solid rgba(107,65,18,.46) !important;
  border-radius: 999px !important;
  background: #b88945 !important;
  box-shadow: inset 0 1px 2px rgba(255,255,255,.35) !important;
  transform: none !important;
}
[data-org-world] button.orgw-market-template-dot.is-active {
  background: #f0a90d !important;
  border-color: #8b5210 !important;
  box-shadow: 0 0 0 3px #fff1b8, 0 0 13px #e49a08 !important;
}
.orgw-market-template-dots {
  gap: 16px !important;
  height: 24px !important;
  align-items: center !important;
}

/* Season Goals — use almost all available height and improve every readable layer. */
.orgw-modal.is-season-goals-page .orgw-modal-card {
  width: min(97.5vw, 97.5vh, 1050px) !important;
  height: min(97.5vw, 97.5vh, 1050px) !important;
}
.orgw-season-frame-header strong {
  font-size: clamp(1.05rem, 2.65vmin, 1.65rem) !important;
  line-height: 1.02 !important;
  text-shadow: 0 1px rgba(255,255,255,.7);
}
.orgw-season-frame-header span {
  font-size: clamp(.62rem, 1.28vmin, .86rem) !important;
}
.orgw-season-frame-overflow-copy strong {
  font-size: clamp(.76rem, 1.75vmin, 1.1rem) !important;
}
.orgw-season-frame-overflow-copy span {
  font-size: clamp(.54rem, 1.1vmin, .76rem) !important;
  line-height: 1.2 !important;
}
.orgw-season-frame-overflow button {
  min-height: 40px !important;
  padding: 7px 12px !important;
  font-size: clamp(.62rem, 1.16vmin, .82rem) !important;
}
.orgw-season-frame-weekly h3,
.orgw-season-frame-missions > h3 {
  font-size: clamp(.72rem, 1.65vmin, 1.06rem) !important;
  font-weight: 900 !important;
}
.orgw-season-weekly-item {
  position: relative;
  border-radius: 10px !important;
}
.orgw-season-weekly-item img {
  width: 62% !important;
  filter: drop-shadow(0 3px 3px rgba(73,40,9,.25));
}
.orgw-season-weekly-item b {
  font-size: clamp(.58rem, 1.25vmin, .82rem) !important;
}
.orgw-season-weekly-item em,
.orgw-season-weekly-status {
  font-size: clamp(.54rem, 1.12vmin, .76rem) !important;
  font-weight: 900 !important;
}
.orgw-season-weekly-item.is-complete {
  color: #245a26 !important;
  background: radial-gradient(circle at 50% 50%, rgba(179,224,107,.34), transparent 72%) !important;
  filter: drop-shadow(0 0 6px rgba(101,169,51,.35));
}
.orgw-season-frame-mission {
  grid-template-rows: minmax(0, 34%) auto minmax(0, 1fr) auto 8px auto !important;
  gap: 2% !important;
  padding: 2% 4% 2.2% !important;
  border-radius: 9px;
}
.orgw-season-frame-mission-icon {
  width: 82% !important;
  filter: drop-shadow(0 3px 3px rgba(63,36,10,.28)) !important;
}
.orgw-season-frame-mission strong {
  font-size: clamp(.58rem, 1.22vmin, .84rem) !important;
  font-weight: 900 !important;
}
.orgw-season-frame-mission span {
  font-size: clamp(.47rem, .96vmin, .66rem) !important;
  line-height: 1.12 !important;
}
.orgw-season-frame-mission small {
  font-size: clamp(.44rem, .9vmin, .62rem) !important;
  font-weight: 900 !important;
}
.orgw-season-frame-mission-progress {
  width: 92%;
  height: 7px;
  overflow: hidden;
  border: 1px solid rgba(96,58,20,.42);
  border-radius: 999px;
  background: rgba(87,53,19,.18);
  box-shadow: inset 0 1px 3px rgba(70,38,7,.24);
}
.orgw-season-frame-mission-progress i {
  display: block;
  width: 0;
  height: 100%;
  padding: 0 !important;
  border-radius: inherit;
  background: linear-gradient(90deg,#8cab3e,#d7c94a);
  box-shadow: 0 0 7px rgba(167,205,67,.55);
}
.orgw-season-frame-mission.is-complete {
  background: radial-gradient(circle at 50% 50%, rgba(190,231,119,.28), transparent 76%);
  filter: drop-shadow(0 0 7px rgba(103,167,58,.25));
}
.orgw-season-frame-mission.is-complete .orgw-season-frame-mission-progress i {
  background: linear-gradient(90deg,#5f9d32,#b5dc55);
}
[data-org-world] .orgw-season-frame-mission button {
  min-height: 28px !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg,#a9c94b,#638f24) !important;
  color: #fff !important;
  font-size: clamp(.48rem, .98vmin, .68rem) !important;
  text-shadow: 0 1px rgba(52,76,14,.8);
}

/* Magical, floating achievement presentation. */
.orgw-achievement-layer {
  position: absolute;
  inset: 0;
  z-index: 3200;
  display: grid;
  place-items: start center;
  padding-top: 13%;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}
.orgw-achievement-layer.is-active {
  opacity: 1;
  visibility: visible;
}
.orgw-achievement-card {
  position: relative;
  z-index: 3;
  width: min(760px, 68%);
  min-height: 170px;
  display: grid;
  grid-template-columns: 128px minmax(0,1fr);
  align-items: center;
  gap: 24px;
  padding: 34px 42px 28px;
  border: 4px solid #e8bd4c;
  border-radius: 30px;
  background: linear-gradient(145deg, rgba(56,39,18,.98), rgba(22,49,31,.98));
  color: #fff1bd;
  box-shadow: 0 25px 65px rgba(0,0,0,.58), inset 0 0 0 3px rgba(255,239,171,.13), 0 0 42px rgba(236,183,48,.48);
  transform: translateY(-60px) scale(.78);
  opacity: 0;
}
.orgw-achievement-layer.is-active .orgw-achievement-card {
  animation: orgwAchievementCard 3.3s cubic-bezier(.18,.86,.23,1) both;
}
.orgw-achievement-card > img,
.orgw-achievement-card > b {
  width: 118px;
  height: 118px;
  display: grid;
  place-items: center;
  object-fit: contain;
  border-radius: 50%;
  background: radial-gradient(circle,#fffbd1 0 35%,#dba22e 70%,#5a3a12 72%);
  filter: drop-shadow(0 0 20px rgba(255,218,91,.72));
  font: 900 72px/1 Georgia,serif;
  color: #fff5a3;
}
.orgw-achievement-kicker {
  position: absolute;
  left: 50%;
  top: -22px;
  transform: translateX(-50%);
  padding: 10px 28px;
  border: 3px solid #f0c85c;
  border-radius: 999px;
  background: linear-gradient(180deg,#8a5b1e,#493015);
  color: #fff0a5;
  font-size: 18px;
  font-weight: 1000;
  letter-spacing: .09em;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 8px 20px rgba(0,0,0,.35);
}
.orgw-achievement-card div {
  display: grid;
  gap: 10px;
}
.orgw-achievement-card strong {
  color: #fff4bd;
  font: 900 clamp(34px,2.2vw,46px)/1.04 Georgia,serif;
  text-shadow: 0 3px 0 #3c240d, 0 0 12px rgba(255,212,77,.4);
}
.orgw-achievement-card div span {
  color: #f2dfad;
  font-size: clamp(21px,1.25vw,27px);
  font-weight: 800;
  line-height: 1.22;
}
.orgw-achievement-magic {
  position: absolute;
  left: 50%;
  top: 22%;
  width: 1px;
  height: 1px;
  z-index: 2;
}
.orgw-achievement-spark {
  position: absolute;
  left: -8px;
  top: -8px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: radial-gradient(circle,#fffce0 0 22%,#ffd448 35%,#7ddc7a 68%,transparent 72%);
  filter: drop-shadow(0 0 10px #ffe45d);
  opacity: 0;
}
.orgw-achievement-layer.is-active .orgw-achievement-spark {
  animation: orgwAchievementSpark 2.35s ease-out var(--ad) both;
}
@keyframes orgwAchievementCard {
  0% { transform:translateY(-70px) scale(.72); opacity:0; }
  12% { transform:translateY(8px) scale(1.06); opacity:1; }
  20%,82% { transform:translateY(0) scale(1); opacity:1; }
  100% { transform:translateY(-35px) scale(.92); opacity:0; }
}
@keyframes orgwAchievementSpark {
  0% { transform:translate(0,0) scale(.2) rotate(0deg); opacity:0; }
  14% { opacity:1; }
  65% { transform:translate(var(--ax),var(--ay)) scale(1.15) rotate(210deg); opacity:.95; }
  100% { transform:translate(calc(var(--ax) * 1.15),calc(var(--ay) - 85px)) scale(.25) rotate(420deg); opacity:0; }
}
@media (prefers-reduced-motion: reduce) {
  .orgw-achievement-layer.is-active .orgw-achievement-card,
  .orgw-achievement-layer.is-active .orgw-achievement-spark { animation-duration:.01ms !important; }
}


/* ORG World 0.1.50 — visible field-upgrade CTA, ready pulse and clear Overflow Chest states. */
[data-org-world] button.orgw-field-template-upgrade {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) clamp(180px, 18%, 250px) !important;
  grid-template-rows: 1fr !important;
  align-items: center !important;
  gap: 20px !important;
  padding: .55% 2.2% .55% 3.1% !important;
  overflow: visible !important;
}
.orgw-field-template-upgrade-copy {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 2px 18px;
  color: #573514;
  text-align: left;
}
.orgw-field-template-upgrade-copy > strong {
  grid-row: 1 / 3;
  font: 900 20px/1 Georgia, serif !important;
  text-transform: uppercase;
}
.orgw-field-template-upgrade-copy > b {
  align-self: end;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 19px !important;
  line-height: 1.05;
}
.orgw-field-template-upgrade-copy > small {
  align-self: start;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #6f5537 !important;
  font-size: 13px !important;
  line-height: 1.1;
}
.orgw-field-template-upgrade-cta {
  width: 100%;
  min-height: 48px;
  display: grid;
  place-items: center;
  padding: 8px 14px;
  border: 2px solid #a56710;
  border-radius: 15px;
  background: linear-gradient(180deg, #ffd978, #e7a52e 58%, #c37a14);
  color: #4f2c0e;
  font: 900 clamp(16px, 1.03vw, 22px)/1 Georgia, serif;
  font-style: normal;
  text-align: center;
  text-shadow: 0 1px rgba(255,255,255,.7);
  box-shadow: inset 0 2px rgba(255,255,255,.62), 0 5px 10px rgba(83,47,12,.24);
}
.orgw-field-template-upgrade.is-ready .orgw-field-template-upgrade-cta {
  border-color: #527b11;
  background: linear-gradient(180deg, #d8ef58, #8fbd1c 58%, #5c8e10);
  color: #263c08;
  box-shadow: inset 0 2px rgba(255,255,255,.55), 0 0 0 4px rgba(179,220,48,.20), 0 7px 15px rgba(56,91,13,.32);
}
.orgw-field-template-upgrade.is-complete .orgw-field-template-upgrade-cta {
  background: linear-gradient(180deg, #d9d0bb, #a99978);
  border-color: #806b4d;
}
.orgw-field-template-upgrade.is-attention .orgw-field-template-upgrade-cta {
  animation: orgwFieldUpgradePump .66s ease-in-out 6;
  transform-origin: center;
}
@keyframes orgwFieldUpgradePump {
  0%, 100% { transform: scale(1); filter: brightness(1); }
  48% { transform: scale(1.085); filter: brightness(1.16); }
  70% { transform: scale(.985); }
}
.orgw-needs-values b:first-child {
  transform: translateX(12%) !important;
}
.orgw-season-frame-overflow button.is-locked {
  opacity: 1 !important;
  cursor: pointer !important;
  border-color: #9c793c !important;
  background: linear-gradient(180deg, #dacba7, #a48a59) !important;
  color: #3e2b14 !important;
}
.orgw-season-frame-overflow button.is-ready {
  animation: orgwOverflowChestReady 1.15s ease-in-out infinite;
  background: linear-gradient(180deg, #ffdd75, #dda22a) !important;
  box-shadow: 0 0 0 4px rgba(255,210,74,.18), 0 0 20px rgba(255,205,67,.46) !important;
}
@keyframes orgwOverflowChestReady {
  0%,100% { transform: scale(1); }
  50% { transform: scale(1.045); }
}
.orgw-overflow-info-panel {
  display: grid;
  grid-template-columns: minmax(110px, 170px) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  max-width: 900px;
}
.orgw-overflow-info-icon img {
  width: 100%;
  max-height: 180px;
  object-fit: contain;
  filter: drop-shadow(0 8px 8px rgba(55,31,8,.24));
}
.orgw-overflow-info-panel h2 { margin: 4px 0 12px; }
.orgw-overflow-info-panel p { margin: 7px 0; }
.orgw-overflow-info-panel > button { grid-column: 1 / -1; justify-self: center; min-width: 260px; }
.orgw-field-template-upgrade > .orgw-field-template-upgrade-copy {
  align-self: stretch !important;
  font-size: initial !important;
  font-weight: initial !important;
}

/* ORG World 0.1.51 — forgiving popup dismissal zones for touch screens. */
.orgw-modal-backdrop {
  cursor: pointer;
  touch-action: manipulation;
}
.orgw-modal-close,
.orgw-modal-card button[aria-label*="Close"],
.orgw-modal-card button[aria-label*="close"] {
  overflow: visible !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent;
}
.orgw-modal-close::before,
.orgw-modal-card button[aria-label*="Close"]::after,
.orgw-modal-card button[aria-label*="close"]::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: max(96px, 210%);
  height: max(96px, 210%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: transparent;
  pointer-events: auto;
}
/* The baked X artwork remains unchanged; only its invisible touch zone grows. */
.orgw-market-template-close,
.orgw-animal-pen-close,
.orgw-field-template-close {
  left: 84.7% !important;
  top: .5% !important;
  width: 12% !important;
  height: 18% !important;
  border-radius: 50% !important;
}
.orgw-tasks-v3 .is-close-top {
  left: 75.7% !important;
  top: 2.9% !important;
  width: 12% !important;
  height: 18% !important;
  border-radius: 50% !important;
}
.orgw-hp-v3 .is-close {
  left: 88.5% !important;
  top: 0 !important;
  width: 11% !important;
  height: 16% !important;
  border-radius: 50% !important;
}
.orgw-season-frame-close-hotspot,
.orgw-gambler-art-button.is-close-top,
.orgw-daily-template-close {
  overflow: visible !important;
  touch-action: manipulation !important;
}


/* ORG World 0.1.52 — beta-ready current farm area. */
.orgw-dock-future {
  display:grid;
  gap:6px;
  padding:18px;
  border:2px dashed rgba(112,80,42,.45);
  border-radius:16px;
  background:rgba(242,229,199,.72);
  color:#735536;
}
.orgw-dock-future strong { font-size:20px; color:#5a3a1b; }
.orgw-dock-future span { font-size:15px; line-height:1.35; }
.orgw-save-backup-panel { display:grid; gap:16px; width:min(980px,92vw); }
.orgw-save-backup-panel header { display:grid; gap:6px; }
.orgw-save-backup-panel h2 { margin:0; color:#4f3017; font-size:32px; }
.orgw-save-backup-panel p { margin:0; color:#705234; font-size:16px; line-height:1.4; }
.orgw-save-backup-panel textarea {
  width:100%;
  min-height:260px;
  max-height:48vh;
  resize:vertical;
  box-sizing:border-box;
  padding:14px;
  border:2px solid #b98b4d;
  border-radius:14px;
  background:#fffaf0;
  color:#3e2c1b;
  font:600 13px/1.35 ui-monospace,Consolas,monospace;
}
.orgw-upgrade-panel [data-find-builder-materials] { justify-self:center; min-width:240px; }


/* ORG World 0.1.53 — Ironport Harbor first voyage */
.orgw-area-scene {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.orgw-area-scene[hidden] { display: none !important; }
.orgw-area-scene > .orgw-world-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  user-select: none;
}
.orgw-ironport-scene { background: #2a79aa; }
.orgw-ironport-prop,
.orgw-ironport-prop-button,
.orgw-ironport-character,
.orgw-ironport-ship,
.orgw-ironport-area-title,
.orgw-ironport-home-marker {
  position: absolute;
  z-index: 12;
}
.orgw-ironport-prop,
.orgw-ironport-prop-button img,
.orgw-ironport-character img,
.orgw-ironport-ship img,
.orgw-ironport-home-marker img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.orgw-ironport-prop-button,
.orgw-ironport-character,
.orgw-ironport-ship,
.orgw-ironport-home-marker {
  appearance: none;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.orgw-ironport-prop-button:hover,
.orgw-ironport-character:hover,
.orgw-ironport-ship:hover,
.orgw-ironport-home-marker:hover { filter: drop-shadow(0 14px 18px rgba(4,18,29,.35)); transform: translateY(-3px) scale(1.015); }
.orgw-ironport-prop.is-lighthouse { left: 4.5%; top: 10%; width: 14%; height: 30%; z-index: 8; }
.orgw-ironport-prop-button.is-crane { left: 15%; top: 43%; width: 21%; height: 33%; z-index: 18; }
.orgw-ironport-prop-button.is-office { left: 43%; top: 34%; width: 20%; height: 30%; z-index: 13; }
.orgw-ironport-prop.is-warehouse { left: 68%; top: 10%; width: 25%; height: 33%; z-index: 8; }
.orgw-ironport-prop.is-gate { left: 75%; top: 61%; width: 22%; height: 31%; z-index: 21; }
.orgw-ironport-prop.is-market { left: 57%; top: 64%; width: 18%; height: 26%; z-index: 22; }
.orgw-ironport-prop.is-banner { left: 47%; top: 18%; width: 11%; height: 15%; z-index: 10; }
.orgw-ironport-character { width: 4.6%; height: 14.5%; z-index: 28; overflow: visible; transform-origin: 50% 100%; transition: transform .22s ease, filter .22s ease; }
.orgw-ironport-character.is-bram { left: 52%; top: 55%; }
.orgw-ironport-character.is-dori { left: 28%; top: 58%; }
.orgw-ironport-character span,
.orgw-ironport-ship span {
  position: absolute;
  left: 50%;
  bottom: -2px;
  transform: translate(-50%, 100%);
  white-space: nowrap;
  padding: 5px 13px;
  border: 2px solid rgba(90,56,22,.65);
  border-radius: 999px;
  background: rgba(255,245,214,.96);
  color: #3d2917;
  font-weight: 900;
  font-size: clamp(14px, 1vw, 21px);
  box-shadow: 0 7px 16px rgba(17,29,36,.25);
}
.orgw-ironport-character b {
  position: absolute;
  right: 4%;
  top: 1%;
  display: grid;
  place-items: center;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: #ffd55d;
  border: 3px solid #74420f;
  color: #4a2605;
  font-size: 24px;
  animation: orgw-ironport-pulse 1.05s ease-in-out infinite;
}
.orgw-ironport-character b[hidden] { display: none; }
@keyframes orgw-ironport-pulse { 50% { transform: scale(1.18); filter: brightness(1.18); } }
.orgw-ironport-ship { left: 24%; top: 72%; width: 18%; height: 23%; z-index: 24; }
.orgw-ironport-area-title {
  left: 3%;
  top: 3%;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 9px 18px 9px 10px;
  border: 2px solid rgba(125,84,35,.7);
  border-radius: 18px;
  background: rgba(247,231,191,.94);
  box-shadow: 0 10px 26px rgba(9,29,43,.28);
  color: #372313;
}
.orgw-ironport-area-title img { width: 78px; height: 62px; object-fit: contain; }
.orgw-ironport-area-title div { display: grid; gap: 2px; }
.orgw-ironport-area-title strong { font-size: clamp(19px,1.3vw,29px); letter-spacing: .04em; }
.orgw-ironport-area-title span { font-size: clamp(13px,.85vw,18px); }
.orgw-ironport-home-marker {
  left: 31.5%;
  top: 66.5%;
  width: 15.5%;
  min-height: 19%;
  z-index: 180;
  display: grid;
  justify-items: center;
  align-content: end;
  color: #3c2816;
  text-shadow: none;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.34));
}
.orgw-ironport-home-marker[hidden] { display: none !important; }
.orgw-ironport-home-marker img { position: absolute; inset: 0; object-position: center; }
.orgw-ironport-home-marker span,
.orgw-ironport-home-marker b {
  position: relative;
  z-index: 2;
  width: max-content;
  max-width: 118%;
  padding: 3px 10px;
  border: 2px solid rgba(104,67,29,.72);
  border-radius: 999px;
  background: rgba(255,245,215,.96);
  box-shadow: 0 5px 11px rgba(33,22,11,.24);
  text-align: center;
  white-space: nowrap;
}
.orgw-ironport-home-marker span { margin: 0 0 -1px; font-size: clamp(15px,1vw,21px); font-weight: 1000; }
.orgw-ironport-home-marker b { margin-bottom: -14%; font-size: clamp(12px,.78vw,17px); }
.orgw-ironport-home-marker.is-ready { animation: orgw-ironport-marker 1.2s ease-in-out infinite; }
@keyframes orgw-ironport-marker { 50% { transform: scale(1.045); filter: drop-shadow(0 0 20px rgba(255,214,84,.9)); } }
.orgw-settings-card.is-ironport { background: linear-gradient(145deg, rgba(28,73,91,.97), rgba(23,42,52,.97)); border-color: #d2a84f; color: #fff3cb; }
.orgw-settings-card.is-ironport span { color: #e9dfc4; }
.orgw-settings-ironport-start { background: linear-gradient(180deg,#e7bb55,#a96e19) !important; color:#261404 !important; border-color:#6f410f !important; font-weight:1000 !important; }
.orgw-settings-ironport-fill { background: linear-gradient(180deg,#87d977,#3f8d42) !important; color:#102a13 !important; border-color:#245c28 !important; font-weight:1000 !important; }
.orgw-ironport-mission-panel,
.orgw-ironport-arrival,
.orgw-ironport-complete { color: #392716; }
.orgw-ironport-mission-panel header > span,
.orgw-ironport-story span,
.orgw-ironport-arrival > div > span,
.orgw-ironport-complete > span,
.orgw-ironport-npc-panel > div > span { display:block; color:#9b611a; font-weight:1000; text-transform:uppercase; letter-spacing:.08em; }
.orgw-ironport-story { display:grid; grid-template-columns:minmax(150px,22%) 1fr; gap:22px; align-items:center; padding:14px 18px; margin-bottom:18px; border:2px solid #bf8d43; border-radius:20px; background:linear-gradient(135deg,#173849,#2a6374); color:#fff5d4; }
.orgw-ironport-story img { width:100%; max-height:230px; object-fit:contain; }
.orgw-ironport-story p { color:#f3ead1; }
.orgw-ironport-cargo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.orgw-ironport-cargo-card { display:grid; grid-template-columns:minmax(90px,42%) 1fr; gap:10px; align-items:center; padding:12px; border:2px solid #9f7645; border-radius:17px; background:#f1e1bd; box-shadow:inset 0 0 0 3px rgba(255,255,255,.35); }
.orgw-ironport-cargo-card.is-ready { border-color:#4c8b43; background:#e4efc7; }
.orgw-ironport-cargo-card img { width:100%; height:125px; object-fit:contain; }
.orgw-ironport-cargo-card div { display:grid; gap:5px; }
.orgw-ironport-cargo-card strong { font-size:1.15em; }
.orgw-ironport-cargo-card small { color:#6f4f2b; }
.orgw-ironport-mission-state { display:flex; justify-content:space-between; gap:18px; padding:12px 16px; border-radius:14px; background:rgba(93,61,28,.1); }
.orgw-ironport-mission-actions,
.orgw-ironport-arrival-actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:flex-end; margin-top:18px; }
.orgw-ironport-arrival { display:grid; grid-template-columns:minmax(180px,35%) 1fr; gap:28px; align-items:center; }
.orgw-ironport-arrival-banner { width:100%; max-height:430px; object-fit:contain; }
.orgw-ironport-npc-panel { display:grid; grid-template-columns:minmax(170px,32%) 1fr; gap:28px; align-items:center; color:#3a2715; }
.orgw-ironport-npc-panel > img { width:100%; max-height:560px; object-fit:contain; }
.orgw-ironport-cargo-mini { display:flex; gap:8px; margin:14px 0; }
.orgw-ironport-cargo-mini img { width:96px; height:82px; object-fit:contain; }
.orgw-ironport-complete { text-align:center; }
.orgw-ironport-complete > img { width:min(420px,62%); height:210px; object-fit:contain; }
.orgw-ironport-reward-row { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin:18px 0; }
.orgw-ironport-reward-row b { padding:11px 17px; border-radius:999px; background:#e8d194; border:2px solid #9f6c28; }
@media (max-width: 860px) {
  .orgw-ironport-story,
  .orgw-ironport-arrival,
  .orgw-ironport-npc-panel { grid-template-columns:1fr; }
  .orgw-ironport-story img,
  .orgw-ironport-npc-panel > img { max-height:210px; }
}


/* ========================================================================
   ORG World 0.1.54 — fast Ironport mission testing and readable home visitor
   ======================================================================== */
.orgw-visitor-panel[data-speaker="ironport"] img {
  width: auto !important;
  max-width: 78% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: left bottom !important;
  pointer-events: auto !important;
}
.orgw-visitor-panel[data-speaker="ironport"].is-blinking img {
  animation: orgwQuestCharacterBlink 1.05s ease-in-out infinite !important;
  filter: drop-shadow(0 13px 15px rgba(211,145,31,.42));
}
.orgw-modal.is-ironport-mission .orgw-modal-card,
.orgw-modal.is-ironport-arrival .orgw-modal-card,
.orgw-modal.is-ironport-npc .orgw-modal-card,
.orgw-modal.is-ironport-complete .orgw-modal-card {
  width: min(1480px, 88vw) !important;
  max-width: none !important;
  max-height: 90vh !important;
  padding: clamp(20px, 2vw, 32px) !important;
  overflow: auto !important;
}
.orgw-modal.is-ironport-mission [data-modal-content],
.orgw-modal.is-ironport-arrival [data-modal-content],
.orgw-modal.is-ironport-npc [data-modal-content],
.orgw-modal.is-ironport-complete [data-modal-content] {
  font-size: clamp(17px, 1.05vw, 22px) !important;
  line-height: 1.35 !important;
}
.orgw-ironport-mission-panel h2,
.orgw-ironport-arrival h2,
.orgw-ironport-npc-panel h2,
.orgw-ironport-complete h2 {
  font-size: clamp(30px, 2.25vw, 46px) !important;
  line-height: 1.08 !important;
  margin: 4px 0 10px !important;
}
.orgw-ironport-mission-panel header p,
.orgw-ironport-arrival p,
.orgw-ironport-npc-panel p,
.orgw-ironport-complete p {
  font-size: clamp(17px, 1.08vw, 23px) !important;
  line-height: 1.42 !important;
}
.orgw-ironport-cargo-card strong { font-size: clamp(20px,1.25vw,27px) !important; }
.orgw-ironport-cargo-card span { font-size: clamp(17px,1vw,22px) !important; }
.orgw-ironport-cargo-card small { font-size: clamp(14px,.86vw,19px) !important; }
.orgw-ironport-mission-state { align-items:center; font-size:clamp(16px,.98vw,21px) !important; }
.orgw-ironport-mission-actions button,
.orgw-ironport-arrival-actions button,
.orgw-ironport-npc-panel button,
.orgw-ironport-complete button { min-height:54px; font-size:clamp(17px,1vw,22px) !important; }
@media (max-width: 820px), (max-height: 620px) {
  .orgw-modal.is-ironport-mission .orgw-modal-card,
  .orgw-modal.is-ironport-arrival .orgw-modal-card,
  .orgw-modal.is-ironport-npc .orgw-modal-card,
  .orgw-modal.is-ironport-complete .orgw-modal-card {
    width: 94vw !important;
    max-height: 94vh !important;
    padding: 16px !important;
  }
  .orgw-ironport-cargo-grid { gap: 9px !important; margin: 10px 0 !important; }
  .orgw-ironport-cargo-card { grid-template-columns: 82px 1fr !important; padding: 9px !important; }
  .orgw-ironport-cargo-card img { height: 88px !important; }
  .orgw-ironport-story { grid-template-columns: 120px 1fr !important; gap: 12px !important; padding: 10px 12px !important; }
  .orgw-ironport-story img { max-height: 145px !important; }
  .orgw-ironport-home-marker { left: 30.5%; width: 17%; }
}


/* ========================================================================
   ORG World 0.1.55 — cohesive Ironport scale, close arrivals and universal missions
   ======================================================================== */
.orgw-ironport-background { object-fit: cover !important; image-rendering: auto; }
.orgw-ironport-character::after {
  content:""; position:absolute; left:17%; right:17%; bottom:3%; height:10%;
  border-radius:50%; background:rgba(17,25,24,.28); filter:blur(4px); z-index:-1;
}
.orgw-ironport-character.is-mission-active {
  transform:scale(1.22);
  filter:drop-shadow(0 0 16px rgba(255,212,80,.78));
  animation:orgwIronportNpcFocus 1.45s ease-in-out infinite;
}
@keyframes orgwIronportNpcFocus { 50% { transform:scale(1.28); filter:drop-shadow(0 0 24px rgba(255,222,109,.95)); } }
.orgw-ironport-character span { font-size:clamp(13px,.8vw,18px); padding:4px 10px; }
.orgw-ironport-character b { right:-8%; top:-8%; width:30px; height:30px; font-size:20px; }

.orgw-modal.is-mission-frame .orgw-modal-card {
  width:min(96vw, calc(94vh * 1.333333)) !important;
  height:auto !important;
  aspect-ratio:4/3 !important;
  max-width:none !important;
  max-height:94vh !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.orgw-modal.is-mission-frame .orgw-modal-close { display:none !important; }
.orgw-modal.is-mission-frame [data-modal-content] { position:absolute; inset:0; width:100%; height:100%; overflow:hidden !important; }
.orgw-mission-frame { position:relative; width:100%; height:100%; color:#4a301b; overflow:hidden; }
.orgw-mission-frame-art { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; user-select:none; }
.orgw-mission-frame-title {
  position:absolute; left:27%; top:13.5%; width:49%; height:10%; margin:0 !important;
  display:flex; align-items:center; justify-content:center; text-align:center; overflow:hidden;
  color:#4b2e18; font-family:Georgia,'Times New Roman',serif; font-size:clamp(24px,2vw,42px) !important;
  line-height:1.03 !important; text-shadow:0 1px 0 #fff1c8; padding:0 2%;
}
.orgw-mission-frame-portrait { position:absolute; left:5.1%; top:12.2%; width:17.2%; height:21.5%; display:grid; place-items:end center; overflow:hidden; border-radius:50%; }
.orgw-mission-frame-portrait img { width:90%; height:91%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 8px 8px rgba(45,25,12,.22)); }
.orgw-mission-frame-content {
  position:absolute; left:9%; top:27%; width:82%; height:55%;
  display:flex; flex-direction:column; gap:clamp(6px,.6vh,12px); align-items:stretch; justify-content:flex-start;
  overflow:hidden; padding:1.2% 1.8%; box-sizing:border-box; text-align:left;
  font-size:clamp(14px,1.08vw,22px); line-height:1.28;
}
.orgw-mission-frame-role { color:#9a611d; font-weight:1000; text-transform:uppercase; letter-spacing:.09em; font-size:.78em; }
.orgw-mission-frame-copy { margin:0 !important; font-size:clamp(16px,1.16vw,23px) !important; line-height:1.35 !important; color:#4a321e; }
.orgw-mission-frame-intro { margin:0 !important; padding:8px 13px; border-left:5px solid #b67b28; background:rgba(217,180,105,.18); font-weight:700; }
.orgw-mission-frame-buttons { position:absolute; left:24.2%; top:87.8%; width:51.8%; height:8%; display:grid; grid-template-columns:1fr 1fr; gap:6.5%; align-items:stretch; }
.orgw-mission-frame-buttons > div { min-width:0; min-height:0; }
.orgw-mission-frame-buttons button {
  width:100% !important; height:100% !important; min-height:0 !important; margin:0 !important; padding:0 7% !important;
  border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important;
  color:#fff9dc !important; text-shadow:0 2px 2px rgba(44,25,8,.72); font-weight:1000 !important;
  font-size:clamp(15px,1.15vw,23px) !important; line-height:1 !important;
}
.orgw-mission-frame-buttons button:disabled { opacity:.46 !important; filter:grayscale(.25); }
.orgw-mission-frame-extra-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:auto; justify-content:center; }
.orgw-mission-frame-extra-actions button { min-height:38px; padding:7px 14px; font-size:.86em !important; }
.orgw-mission-frame .orgw-ironport-cargo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:4px 0; min-height:0; }
.orgw-mission-frame .orgw-ironport-cargo-card { grid-template-columns:72px 1fr; gap:7px; padding:7px 9px; border-radius:13px; }
.orgw-mission-frame .orgw-ironport-cargo-card img { height:78px; }
.orgw-mission-frame .orgw-ironport-cargo-card strong { font-size:clamp(15px,1vw,20px) !important; }
.orgw-mission-frame .orgw-ironport-cargo-card span { font-size:clamp(13px,.88vw,18px) !important; }
.orgw-mission-frame .orgw-ironport-cargo-card small { font-size:clamp(11px,.75vw,15px) !important; }
.orgw-mission-frame .orgw-ironport-mission-state { padding:8px 12px; border-radius:11px; font-size:clamp(13px,.9vw,18px) !important; }
.orgw-mission-frame .orgw-ironport-cargo-mini { justify-content:center; margin:5px 0; }
.orgw-mission-frame .orgw-ironport-cargo-mini img { width:84px; height:66px; }
.orgw-mission-frame .orgw-ironport-reward-row { margin:10px 0; }
.orgw-mission-frame .orgw-ironport-reward-row b { padding:8px 13px; }
.orgw-mission-frame .orgw-tutorial-roadmap { margin-top:4px; max-height:210px; }
.orgw-mission-frame .orgw-tutorial-roadmap-track { max-height:155px; overflow-x:auto; overflow-y:hidden; }
.orgw-mission-frame .orgw-visitor-note,
.orgw-mission-frame .orgw-tutorial-objective { margin:4px 0 !important; }
@media (max-width:820px), (max-height:650px) {
  .orgw-mission-frame-content { top:26.5%; height:56%; gap:4px; font-size:13px; }
  .orgw-mission-frame-title { font-size:clamp(20px,2vw,30px) !important; }
  .orgw-mission-frame-copy { font-size:clamp(13px,1.25vw,17px) !important; line-height:1.25 !important; }
  .orgw-mission-frame .orgw-ironport-cargo-card { grid-template-columns:58px 1fr; padding:5px 7px; }
  .orgw-mission-frame .orgw-ironport-cargo-card img { height:58px; }
  .orgw-mission-frame .orgw-ironport-mission-state { padding:5px 8px; }
  .orgw-mission-frame-buttons { top:87.5%; }
}


/* ========================================================================
   ORG World 0.1.56 — full-size universal missions, 30-mission story and magic rewards
   ======================================================================== */
.orgw-modal.is-mission-frame { padding:0 !important; }
.orgw-modal.is-mission-frame .orgw-modal-card {
  width:min(99.5vw, calc(99vh * 1.333333)) !important;
  max-height:99vh !important;
  aspect-ratio:4/3 !important;
}
.orgw-mission-frame-title { left:25.5% !important; top:10.7% !important; width:55% !important; height:10.5% !important; font-size:clamp(28px,2.45vw,50px) !important; }
.orgw-mission-frame-chapter { position:absolute; left:26%; top:20.2%; width:54%; text-align:center; color:#86612f; font-weight:900; font-size:clamp(13px,.92vw,19px); letter-spacing:.06em; text-transform:uppercase; }
.orgw-mission-frame-portrait { left:5.4% !important; top:7.8% !important; width:18.2% !important; height:22.5% !important; }
.orgw-mission-frame-portrait i { display:grid; place-items:center; width:82%; height:82%; border-radius:50%; color:#f7d06b; background:radial-gradient(circle,#3d5a67,#142e3b 72%); border:4px solid #c79431; font-style:normal; font-size:clamp(48px,5vw,92px); text-shadow:0 5px 0 #2d1a09; box-shadow:inset 0 0 24px rgba(0,0,0,.35); }
.orgw-mission-frame-content { left:8.2% !important; top:24.2% !important; width:83.6% !important; height:61.5% !important; padding:1.2% 1.8% !important; gap:clamp(7px,.75vh,13px) !important; font-size:clamp(16px,1.15vw,24px) !important; }
.orgw-mission-frame-role { font-size:clamp(14px,.9vw,19px) !important; }
.orgw-mission-frame-copy { font-size:clamp(17px,1.16vw,24px) !important; line-height:1.28 !important; }
.orgw-mission-frame-buttons { left:23.4% !important; top:88.1% !important; width:53.2% !important; height:8.4% !important; }
.orgw-mission-frame-buttons button { font-size:clamp(17px,1.25vw,26px) !important; }
.orgw-ironport-objective-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(7px,.7vw,13px); min-height:0; }
.orgw-ironport-objective { display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:10px; min-height:58px; padding:8px 11px; border:2px solid rgba(133,91,43,.5); border-radius:14px; background:rgba(255,249,226,.72); box-shadow:inset 0 1px 0 rgba(255,255,255,.75); }
.orgw-ironport-objective > i { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#e5c883; border:2px solid #8a5a23; font-style:normal; font-size:23px; }
.orgw-ironport-objective div { display:grid; gap:2px; min-width:0; }
.orgw-ironport-objective strong { font-size:clamp(14px,.94vw,20px); line-height:1.12; color:#4b2f17; }
.orgw-ironport-objective span { color:#75512a; font-size:clamp(13px,.8vw,17px); font-weight:800; }
.orgw-ironport-objective button { min-height:36px !important; padding:5px 10px !important; border:2px solid #8f621e !important; border-radius:10px !important; background:linear-gradient(#f1c75f,#bd8123) !important; color:#3d260e !important; font-size:13px !important; font-weight:1000 !important; }
.orgw-ironport-objective > b { color:#337c3d; font-size:25px; }
.orgw-ironport-objective.is-ready { border-color:#67964f; background:rgba(224,241,194,.82); }
.orgw-ironport-story-rewards { display:flex; align-items:center; gap:12px; padding:9px 13px; border-radius:12px; background:rgba(121,78,27,.1); border-left:5px solid #be8429; }
.orgw-ironport-story-rewards strong { color:#764715; text-transform:uppercase; letter-spacing:.06em; }
.orgw-ironport-story-rewards span { color:#4c351e; font-weight:800; }
.orgw-ironport-next-chapter { margin:4px 0 !important; text-align:center; font-weight:900; color:#71501e !important; }
.orgw-lighthouse-progress { position:relative; height:28px; border:3px solid #755025; border-radius:999px; background:#d6c19b; overflow:hidden; }
.orgw-lighthouse-progress span { position:absolute; inset:0 auto 0 0; width:var(--p); background:linear-gradient(90deg,#d28b22,#ffe372); }
.orgw-lighthouse-progress b { position:absolute; inset:0; display:grid; place-items:center; color:#35220f; }
.orgw-mission-reward-magic { position:absolute; left:50%; top:44%; width:1px; height:1px; pointer-events:none; }
.orgw-mission-reward-magic i { position:absolute; width:14px; height:14px; border-radius:50%; background:radial-gradient(circle,#fff 0 20%,#ffe45b 30%,#8ce8ff 58%,transparent 70%); filter:drop-shadow(0 0 8px #ffd95c); animation:orgwMissionMagic 2.5s ease-out calc(var(--mi)*.025s) both; }
@keyframes orgwMissionMagic { 0%{transform:rotate(var(--ma)) translateX(0) scale(.1);opacity:0} 18%{opacity:1} 80%{transform:rotate(var(--ma)) translateX(190px) scale(1.15);opacity:1} 100%{transform:rotate(var(--ma)) translateX(240px) scale(.2);opacity:0} }
.orgw-ironport-reward-row.is-animated b { animation:orgwMissionRewardPop .72s cubic-bezier(.16,1.35,.4,1) both; }
.orgw-ironport-reward-row.is-animated b:nth-child(2){animation-delay:.12s}.orgw-ironport-reward-row.is-animated b:nth-child(3){animation-delay:.24s}.orgw-ironport-reward-row.is-animated b:nth-child(4){animation-delay:.36s}
@keyframes orgwMissionRewardPop { 0%{transform:translateY(35px) scale(.3);opacity:0;filter:brightness(2)} 70%{transform:translateY(-4px) scale(1.08);opacity:1} 100%{transform:none;opacity:1;filter:none} }
.orgw-ironport-prop-button.is-lighthouse { left:4.5%; top:10%; width:14%; height:30%; z-index:8; }
.orgw-ironport-prop-button.is-lighthouse img { width:100%;height:100%;object-fit:contain; }
.orgw-ironport-character.is-hilda { left:69%; top:48%; width:5.2%; height:13%; }
.orgw-ironport-forge-glyph { display:grid; place-items:center; width:100%; height:100%; border-radius:50%; background:radial-gradient(circle,#4d6470,#172f3a 72%); border:5px solid #c9902d; color:#ffd87a; font-style:normal; font-size:clamp(34px,3.2vw,70px); box-shadow:0 12px 24px rgba(0,0,0,.34), inset 0 0 22px rgba(0,0,0,.35); }
.orgw-ironport-character.is-mission-ready { filter:drop-shadow(0 0 24px rgba(118,255,126,.92)); }
.orgw-ironport-character.is-track-pulse,.orgw-ironport-prop-button.is-track-pulse,.orgw-ironport-ship.is-track-pulse { animation:orgwTrackPulse .7s ease-in-out 4; }
@keyframes orgwTrackPulse { 50%{filter:drop-shadow(0 0 28px #ffe576);transform:scale(1.08)} }
.orgw-settings-card.is-story-test label { display:grid; gap:6px; font-weight:900; color:#fff0c0; }
.orgw-settings-card.is-story-test select { width:100%; min-height:48px; padding:8px 12px; border:2px solid #d1a246; border-radius:10px; background:#fff7df; color:#372413; font-weight:800; }
.orgw-settings-card.is-story-test em { color:#ffe382; font-style:normal; font-weight:900; }
@media (max-width:900px),(max-height:650px){
 .orgw-modal.is-mission-frame .orgw-modal-card{width:min(99.5vw,calc(99vh*1.333333))!important;max-height:99vh!important}
 .orgw-mission-frame-content{top:23.8%!important;height:62%!important;padding:.8% 1.3%!important;gap:4px!important}
 .orgw-mission-frame-copy{font-size:clamp(14px,1.35vw,18px)!important;line-height:1.18!important}
 .orgw-ironport-objective-grid{gap:5px}
 .orgw-ironport-objective{min-height:45px;padding:4px 7px;grid-template-columns:32px minmax(0,1fr) auto;gap:6px}
 .orgw-ironport-objective>i{width:30px;height:30px;font-size:18px}
 .orgw-ironport-objective strong{font-size:clamp(11px,1.2vw,15px)}
 .orgw-ironport-objective span{font-size:11px}
 .orgw-ironport-objective button{min-height:27px!important;padding:2px 7px!important;font-size:10px!important}
 .orgw-ironport-story-rewards{padding:4px 8px;font-size:11px}
 .orgw-mission-frame-role{font-size:11px!important}
 .orgw-mission-frame-title{font-size:clamp(20px,2.4vw,32px)!important}
 .orgw-mission-frame-chapter{font-size:10px}
}


/* ========================================================================
   ORG World 0.1.57 — optimized local Ironport graphics and readable missions
   ======================================================================== */
.orgw-ironport-scene[hidden] img[data-ironport-src]:not([src]) { visibility:hidden; }
.orgw-ironport-scene { contain:layout style paint; }
.orgw-ironport-scene img { image-rendering:auto; backface-visibility:hidden; }
.orgw-ironport-background { object-fit:cover !important; }

/* Mission dimensions are assigned in logical 1920×1080 stage pixels by
   applyPopupLayout(). These rules remove the old viewport-unit double scale. */
.orgw-modal.is-mission-frame .orgw-modal-card {
  width:auto !important;
  height:auto !important;
  max-width:none !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  overflow:visible !important;
}
.orgw-modal.is-mission-frame [data-modal-content] { inset:0 !important; }
.orgw-mission-frame-art { object-fit:fill !important; }
.orgw-mission-frame-title {
  left:24.5% !important; top:10.4% !important; width:57% !important; height:10.8% !important;
  font-size:clamp(30px,2.7vw,54px) !important;
}
.orgw-mission-frame-chapter { left:25% !important; top:20.3% !important; width:56% !important; font-size:clamp(14px,1vw,21px) !important; }
.orgw-mission-frame-portrait { left:5.1% !important; top:7.7% !important; width:17.8% !important; height:23.3% !important; }
.orgw-mission-frame-content {
  left:7.7% !important; top:24.2% !important; width:84.6% !important; height:61.8% !important;
  padding:1.15% 1.6% !important; gap:clamp(8px,.82vh,14px) !important;
  font-size:clamp(17px,1.22vw,25px) !important;
}
.orgw-mission-frame-role { font-size:clamp(15px,.98vw,21px) !important; }
.orgw-mission-frame-copy { font-size:clamp(18px,1.25vw,26px) !important; line-height:1.3 !important; }
.orgw-mission-frame-buttons { left:22.5% !important; top:88.05% !important; width:55% !important; height:8.55% !important; }
.orgw-mission-frame-buttons button { font-size:clamp(18px,1.34vw,28px) !important; }
.orgw-ironport-objective-grid { gap:clamp(8px,.75vw,14px) !important; }
.orgw-ironport-objective { min-height:64px; padding:9px 12px; }
.orgw-ironport-objective strong { font-size:clamp(15px,1vw,21px); }
.orgw-ironport-objective span { font-size:clamp(13px,.86vw,18px); }
.orgw-ironport-story-rewards { font-size:clamp(14px,.9vw,19px); }

@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame-content { left:7.4% !important; top:23.7% !important; width:85.2% !important; height:62.5% !important; padding:.75% 1.2% !important; gap:5px !important; }
  .orgw-mission-frame-title { font-size:clamp(23px,2.65vw,38px) !important; }
  .orgw-mission-frame-copy { font-size:clamp(15px,1.45vw,20px) !important; line-height:1.2 !important; }
  .orgw-mission-frame-role { font-size:12px !important; }
  .orgw-mission-frame-chapter { font-size:11px !important; }
  .orgw-ironport-objective { min-height:48px; padding:5px 8px; }
  .orgw-ironport-objective strong { font-size:clamp(12px,1.25vw,16px); }
  .orgw-ironport-objective span { font-size:11px; }
}


/* ========================================================================
   ORG World 0.1.59 — transparent Ironport portraits, readable mission text
   and multi-mission tracker
   ======================================================================== */
.orgw-mission-frame-portrait i {
  width:100% !important;
  height:100% !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-shadow:0 5px 8px rgba(45,25,12,.35) !important;
  filter:drop-shadow(0 8px 8px rgba(45,25,12,.22));
}
.orgw-mission-frame-portrait img { width:96% !important; height:98% !important; object-fit:contain !important; object-position:center bottom !important; }
.orgw-mission-frame-title { font-size:50px !important; line-height:1.02 !important; }
.orgw-mission-frame-chapter { font-size:20px !important; }
.orgw-mission-frame-content { font-size:26px !important; gap:10px !important; }
.orgw-mission-frame-role { font-size:21px !important; line-height:1.1 !important; }
.orgw-mission-frame-copy { font-size:26px !important; line-height:1.24 !important; }
.orgw-ironport-objective { min-height:76px !important; padding:9px 13px !important; grid-template-columns:48px minmax(0,1fr) auto !important; gap:11px !important; }
.orgw-ironport-objective > i { width:44px !important; height:44px !important; font-size:25px !important; background:rgba(229,200,131,.74) !important; }
.orgw-ironport-objective strong { font-size:22px !important; line-height:1.08 !important; }
.orgw-ironport-objective span { font-size:18px !important; }
.orgw-ironport-objective button { min-height:40px !important; padding:5px 13px !important; font-size:17px !important; }
.orgw-ironport-objective > b { font-size:30px !important; }
.orgw-ironport-story-rewards { min-height:48px; font-size:19px !important; line-height:1.15; }
.orgw-mission-frame-buttons button { font-size:27px !important; }
.orgw-mission-frame-extra-actions { gap:10px !important; }
.orgw-mission-frame-extra-actions button { min-height:42px !important; padding:7px 16px !important; font-size:18px !important; }

.orgw-mission-tracker {
  position:absolute;
  z-index:520;
  right:1.3%;
  top:15.2%;
  width:21.5%;
  max-height:72%;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  border:4px solid #8a5b22;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(31,66,78,.98),rgba(14,37,48,.97));
  box-shadow:0 18px 38px rgba(0,0,0,.42),inset 0 0 0 3px rgba(225,177,72,.28);
  color:#fff3c7;
  overflow:hidden;
  pointer-events:auto;
}
.orgw-mission-tracker[hidden] { display:none !important; }
.orgw-mission-tracker > header {
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 11px 10px 16px;
  border-bottom:3px solid rgba(210,161,62,.72);
  background:linear-gradient(180deg,#315f6c,#1b414f);
}
.orgw-mission-tracker > header div { display:grid; gap:1px; min-width:0; }
.orgw-mission-tracker > header span { color:#e3b957; font-size:14px; font-weight:1000; letter-spacing:.12em; text-transform:uppercase; }
.orgw-mission-tracker > header strong { font-size:24px; line-height:1; white-space:nowrap; }
.orgw-mission-tracker > header button {
  flex:0 0 46px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  padding:0;
  border:3px solid #d2a13e;
  border-radius:50%;
  background:linear-gradient(#f2d57d,#b97922);
  color:#3b240d;
  font-size:34px;
  font-weight:1000;
  line-height:1;
  cursor:pointer;
}
.orgw-mission-tracker-list { min-height:0; display:grid; align-content:start; gap:10px; padding:11px; overflow-y:auto; overscroll-behavior:contain; }
.orgw-mission-tracker-card {
  width:100%;
  display:grid;
  gap:9px;
  padding:11px;
  border:3px solid #b98536;
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,246,211,.98),rgba(226,205,153,.98));
  box-shadow:0 8px 16px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.8);
  color:#3e2a16;
  text-align:left;
  cursor:pointer;
}
.orgw-mission-tracker-card.is-ready { border-color:#7eb254; box-shadow:0 0 18px rgba(152,233,93,.5),inset 0 1px 0 rgba(255,255,255,.8); }
.orgw-mission-tracker-card-head { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:8px; }
.orgw-mission-tracker-card-head > i { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; border:2px solid #936122; background:rgba(255,248,220,.55); color:#8a5b22; font-style:normal; font-size:21px; font-weight:1000; }
.orgw-mission-tracker-card-head > span { display:grid; min-width:0; }
.orgw-mission-tracker-card-head strong { overflow:hidden; font-size:19px; line-height:1.05; text-overflow:ellipsis; white-space:nowrap; }
.orgw-mission-tracker-card-head small { color:#74512d; font-size:13px; font-weight:800; }
.orgw-mission-tracker-card-head > b { color:#3c7a34; font-size:14px; }
.orgw-mission-tracker-goals { display:grid; gap:4px; }
.orgw-mission-tracker-goal { display:grid; grid-template-columns:18px minmax(0,1fr) auto; align-items:center; gap:5px; font-size:15px; line-height:1.05; }
.orgw-mission-tracker-goal i { color:#9b6b2d; font-style:normal; font-weight:1000; }
.orgw-mission-tracker-goal b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.orgw-mission-tracker-goal em { color:#6f4a25; font-style:normal; font-weight:1000; }
.orgw-mission-tracker-goal.is-ready { color:#3d7738; }
.orgw-mission-tracker-open { color:#7a562c; font-size:12px; font-style:normal; font-weight:900; text-align:right; }
.orgw-mission-tracker.is-collapsed { width:74px; max-height:74px; border-radius:20px; }
.orgw-mission-tracker.is-collapsed > header { padding:10px; border-bottom:0; }
.orgw-mission-tracker.is-collapsed > header div,
.orgw-mission-tracker.is-collapsed .orgw-mission-tracker-list { display:none; }
.orgw-mission-tracker.is-collapsed > header button { margin:auto; }

@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame-title { font-size:42px !important; }
  .orgw-mission-frame-chapter { font-size:17px !important; }
  .orgw-mission-frame-content { font-size:23px !important; gap:7px !important; }
  .orgw-mission-frame-role { font-size:18px !important; }
  .orgw-mission-frame-copy { font-size:23px !important; line-height:1.18 !important; }
  .orgw-ironport-objective { min-height:66px !important; padding:7px 10px !important; grid-template-columns:42px minmax(0,1fr) auto !important; }
  .orgw-ironport-objective > i { width:38px !important; height:38px !important; font-size:22px !important; }
  .orgw-ironport-objective strong { font-size:19px !important; }
  .orgw-ironport-objective span { font-size:16px !important; }
  .orgw-ironport-objective button { min-height:35px !important; font-size:15px !important; }
  .orgw-ironport-story-rewards { font-size:17px !important; }
  .orgw-mission-frame-buttons button { font-size:23px !important; }
  .orgw-mission-tracker { right:.8%; top:14.5%; width:24%; max-height:73%; }
  .orgw-mission-tracker > header { min-height:64px; }
  .orgw-mission-tracker > header strong { font-size:20px; }
  .orgw-mission-tracker-card-head strong { font-size:17px; }
  .orgw-mission-tracker-goal { font-size:13px; }
}


/* ========================================================================
   ORG World 0.1.60 — compact baked Ironport background
   ======================================================================== */
.orgw-ironport-scene { background:#163447 !important; }
.orgw-ironport-background { object-fit:cover !important; }
/* All permanent structures are baked into the new background. The lighthouse
   remains separate because its repair and completion stages are gameplay. */
.orgw-ironport-prop.is-warehouse,
.orgw-ironport-prop.is-gate,
.orgw-ironport-prop.is-market,
.orgw-ironport-prop.is-banner { display:none !important; }
.orgw-ironport-prop-button.is-crane img,
.orgw-ironport-prop-button.is-office img,
.orgw-ironport-ship img { opacity:0 !important; }
.orgw-ironport-prop-button.is-crane,
.orgw-ironport-prop-button.is-office,
.orgw-ironport-ship { background:transparent !important; }
/* Place the dynamic lighthouse over the reserved empty foundation. */
.orgw-ironport-prop-button.is-lighthouse { left:24.2% !important; top:16.2% !important; width:15.5% !important; height:41% !important; z-index:18 !important; }
.orgw-ironport-prop-button.is-lighthouse img { width:100% !important; height:100% !important; object-fit:contain !important; object-position:center bottom !important; }
/* Reduce mobile compositing pressure without changing interaction or mission logic. */
@media (hover:none), (pointer:coarse) {
  .orgw-ironport-prop-button:hover,
  .orgw-ironport-character:hover,
  .orgw-ironport-ship:hover,
  .orgw-ironport-home-marker:hover { filter:none !important; transform:none !important; }
  .orgw-ironport-character.is-mission-ready { filter:drop-shadow(0 0 14px rgba(118,255,126,.68)) !important; }
}
/* Mission safe area: maximum readable text while respecting the inner frame. */
.orgw-mission-frame-title {
  left:24.8% !important; top:11.3% !important; width:56.4% !important; height:10.1% !important;
  color:#4b2e18 !important; font-size:clamp(32px,2.85vw,56px) !important; line-height:1.04 !important; padding:0 1.4% !important;
}
.orgw-mission-frame-chapter {
  left:25.1% !important; top:21.4% !important; width:55.8% !important; color:#7f5a2a !important; font-size:clamp(15px,1.05vw,22px) !important;
}
.orgw-mission-frame-portrait { left:5.1% !important; top:8.3% !important; width:17.7% !important; height:22.7% !important; }
.orgw-mission-frame-content {
  left:8.3% !important; top:25.6% !important; width:82.9% !important; height:58.8% !important;
  padding:1.35% 2.05% !important; gap:clamp(9px,.9vh,16px) !important; font-size:clamp(18px,1.28vw,26px) !important;
}
.orgw-mission-frame-role { color:#915c23 !important; font-size:clamp(16px,1.05vw,22px) !important; }
.orgw-mission-frame-copy { color:#4b341f !important; font-size:clamp(19px,1.32vw,28px) !important; line-height:1.32 !important; }
.orgw-mission-frame-intro { color:#5a3a18 !important; }
.orgw-mission-frame-buttons { left:22.8% !important; top:88.2% !important; width:54.4% !important; height:8.25% !important; }
.orgw-mission-frame-buttons button { font-size:clamp(18px,1.38vw,29px) !important; }
.orgw-ironport-objective-grid { gap:clamp(9px,.8vw,15px) !important; }
.orgw-ironport-objective { min-height:66px !important; padding:10px 12px !important; }
.orgw-ironport-objective strong { font-size:clamp(16px,1.04vw,22px) !important; }
.orgw-ironport-objective span { font-size:clamp(14px,.9vw,18px) !important; }
.orgw-ironport-objective button { font-size:14px !important; }
.orgw-ironport-story-rewards { padding:10px 14px !important; font-size:clamp(14px,.94vw,20px) !important; }
.orgw-lighthouse-progress { height:30px !important; }
@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame-title { top:11.6% !important; font-size:clamp(24px,2.7vw,40px) !important; }
  .orgw-mission-frame-chapter { top:21.8% !important; font-size:12px !important; }
  .orgw-mission-frame-content { left:8% !important; top:25.2% !important; width:83.6% !important; height:59.8% !important; padding:.9% 1.35% !important; gap:6px !important; }
  .orgw-mission-frame-role { font-size:12px !important; }
  .orgw-mission-frame-copy { font-size:clamp(15px,1.48vw,20px) !important; line-height:1.22 !important; }
  .orgw-ironport-objective { min-height:50px !important; padding:5px 8px !important; }
  .orgw-ironport-objective strong { font-size:clamp(12px,1.26vw,16px) !important; }
  .orgw-ironport-objective span { font-size:11px !important; }
  .orgw-ironport-objective button { min-height:28px !important; font-size:10px !important; }
}


/* ========================================================================
   ORG World 0.1.61 — universal mission-frame text alignment fine tuning
   ======================================================================== */
.orgw-mission-frame-title {
  left:24.9% !important;
  top:11.55% !important;
  width:56.2% !important;
  height:9.9% !important;
  font-size:clamp(32px,2.82vw,56px) !important;
  line-height:1.03 !important;
  padding:0 1.2% !important;
}
.orgw-mission-frame-chapter {
  left:25.2% !important;
  top:21.55% !important;
  width:55.6% !important;
  font-size:clamp(15px,1.03vw,22px) !important;
  color:#7a5728 !important;
}
.orgw-mission-frame-portrait {
  left:5.15% !important;
  top:8.15% !important;
  width:17.65% !important;
  height:22.75% !important;
}
.orgw-mission-frame-content {
  left:8.25% !important;
  top:26.95% !important;
  width:83.0% !important;
  height:57.3% !important;
  padding:1.55% 2.05% 1.3% 2.05% !important;
  gap:clamp(9px,.92vh,16px) !important;
  font-size:clamp(18px,1.26vw,26px) !important;
}
.orgw-mission-frame-content > :first-child { margin-top:2px !important; }
.orgw-mission-frame-role {
  display:block !important;
  margin:0 0 6px 0 !important;
  color:#8d5921 !important;
  font-size:clamp(16px,1.03vw,22px) !important;
  line-height:1.08 !important;
}
.orgw-mission-frame-copy {
  color:#49331f !important;
  font-size:clamp(18px,1.28vw,27px) !important;
  line-height:1.33 !important;
}
.orgw-mission-frame-intro { margin-bottom:2px !important; }
.orgw-mission-frame .orgw-ironport-cargo-mini { margin:14px 0 4px !important; }
.orgw-ironport-story-rewards { margin-top:2px !important; }
.orgw-mission-frame-buttons {
  left:22.9% !important;
  top:88.25% !important;
  width:54.2% !important;
  height:8.2% !important;
}
@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame-title { top:11.8% !important; font-size:clamp(24px,2.68vw,39px) !important; }
  .orgw-mission-frame-chapter { top:21.9% !important; font-size:12px !important; }
  .orgw-mission-frame-content {
    left:8.0% !important;
    top:26.55% !important;
    width:83.5% !important;
    height:58.2% !important;
    padding:1.0% 1.4% .95% 1.4% !important;
    gap:6px !important;
  }
  .orgw-mission-frame-role { font-size:12px !important; margin-bottom:4px !important; }
  .orgw-mission-frame-copy { font-size:clamp(15px,1.45vw,20px) !important; line-height:1.23 !important; }
}


/* ========================================================================
   ORG World 0.1.63 — mission clarity, item handover and Ironport placement
   ======================================================================== */
/* Keep the title fully inside the upper parchment box, and use deliberately
   smaller titles so long mission names stay readable. */
.orgw-mission-frame-title {
  left:25.3% !important;
  top:12.15% !important;
  width:55.4% !important;
  height:8.3% !important;
  padding:0 1.4% !important;
  font-size:clamp(28px,2.35vw,45px) !important;
  line-height:1.02 !important;
  text-wrap:balance;
}
.orgw-mission-frame-chapter {
  left:25.5% !important;
  top:20.65% !important;
  width:55% !important;
  font-size:clamp(14px,.92vw,20px) !important;
}
/* Portrait ends near 31%. Start all role/body content below it so text never
   touches or disappears behind the portrait frame. */
.orgw-mission-frame-content {
  left:8.25% !important;
  top:31.25% !important;
  width:83% !important;
  height:53.1% !important;
  padding:1.35% 2.05% 1.2% !important;
  gap:clamp(7px,.72vh,12px) !important;
}
.orgw-mission-frame-role {
  margin:0 0 5px !important;
  color:#81501e !important;
  font-size:clamp(15px,.96vw,20px) !important;
}
.orgw-mission-frame-copy {
  font-size:clamp(17px,1.18vw,24px) !important;
  line-height:1.28 !important;
}
.orgw-ironport-objective {
  min-height:78px !important;
  padding:7px 11px !important;
  grid-template-columns:44px minmax(0,1fr) auto !important;
}
.orgw-ironport-objective > div { gap:1px !important; }
.orgw-ironport-objective strong { font-size:clamp(15px,.96vw,20px) !important; }
.orgw-ironport-objective span { font-size:clamp(13px,.82vw,17px) !important; }
.orgw-ironport-objective-source {
  display:block;
  overflow:hidden;
  color:#75542f;
  font-size:clamp(11px,.69vw,14px) !important;
  font-weight:750;
  line-height:1.08;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.orgw-ironport-objective.is-ready .orgw-ironport-objective-source { color:#47743d; }
.orgw-ironport-story-rewards { min-height:42px !important; padding:7px 12px !important; font-size:clamp(13px,.82vw,17px) !important; }
.orgw-mission-frame-extra-actions {
  margin-top:auto !important;
  gap:10px !important;
}
.orgw-mission-frame-extra-actions button {
  min-height:38px !important;
  padding:5px 14px !important;
  border:2px solid #936424 !important;
  border-radius:11px !important;
  background:linear-gradient(#f5d57a,#c88c2c) !important;
  color:#42290f !important;
  box-shadow:0 3px 0 #744516 !important;
  font-size:clamp(13px,.82vw,17px) !important;
  font-weight:950 !important;
}
.orgw-ironport-visit-notice {
  display:flex;
  align-items:center;
  gap:12px;
  padding:8px 12px;
  border:2px solid #6d984b;
  border-radius:12px;
  background:linear-gradient(90deg,rgba(220,242,190,.95),rgba(244,250,222,.9));
  color:#355f2d;
  box-shadow:inset 0 1px rgba(255,255,255,.8);
}
.orgw-ironport-visit-notice b { white-space:nowrap; font-size:clamp(14px,.9vw,19px); }
.orgw-ironport-visit-notice span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:clamp(12px,.76vw,16px); font-weight:800; }
.orgw-ironport-handover-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  min-height:0;
  overflow-y:auto;
  padding:2px 3px 4px;
}
.orgw-ironport-handover-item {
  min-height:138px;
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px;
  border:2px solid #b08342;
  border-radius:15px;
  background:linear-gradient(145deg,rgba(255,249,226,.96),rgba(238,218,174,.96));
  box-shadow:0 7px 13px rgba(69,41,12,.18),inset 0 1px #fff;
}
.orgw-ironport-handover-item > img { width:82px; height:82px; object-fit:contain; filter:drop-shadow(0 5px 5px rgba(54,31,8,.2)); }
.orgw-ironport-handover-item > i { width:76px; height:76px; display:grid; place-items:center; border-radius:50%; border:3px solid #a4732d; background:#f2d998; font-style:normal; font-size:40px; }
.orgw-ironport-handover-item div { min-width:0; display:grid; gap:4px; }
.orgw-ironport-handover-item strong { font-size:clamp(14px,.9vw,19px); line-height:1.1; }
.orgw-ironport-handover-item b { color:#7d4f18; font-size:clamp(13px,.82vw,17px); }
.orgw-ironport-handover-item small { color:#735633; font-size:clamp(10px,.64vw,13px); line-height:1.12; }
/* Better placement on the compact baked Ironport map. */
.orgw-ironport-character { width:5.8% !important; height:17.8% !important; }
.orgw-ironport-character.is-dori { left:27.2% !important; top:51.5% !important; }
.orgw-ironport-character.is-bram { left:54.2% !important; top:44.2% !important; }
.orgw-ironport-character.is-hilda { left:73.1% !important; top:29.8% !important; width:6.1% !important; height:18.5% !important; }
.orgw-ironport-prop-button.is-lighthouse { left:22.8% !important; top:12.8% !important; width:15.8% !important; height:46.5% !important; z-index:18 !important; }
.orgw-ironport-prop-button.is-crane { left:1.8% !important; top:30.2% !important; width:24.5% !important; height:35.8% !important; }
.orgw-ironport-prop-button.is-office { left:43.2% !important; top:18.8% !important; width:20.8% !important; height:34% !important; }
.orgw-ironport-ship { left:15.4% !important; top:65.8% !important; width:22% !important; height:27% !important; }
@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame-title { top:12.4% !important; font-size:clamp(22px,2.25vw,34px) !important; }
  .orgw-mission-frame-chapter { top:20.85% !important; font-size:11px !important; }
  .orgw-mission-frame-content { top:30.9% !important; height:53.8% !important; padding:.8% 1.3% !important; gap:5px !important; }
  .orgw-mission-frame-role { font-size:11px !important; }
  .orgw-mission-frame-copy { font-size:clamp(14px,1.36vw,18px) !important; line-height:1.2 !important; }
  .orgw-ironport-objective { min-height:62px !important; padding:4px 7px !important; grid-template-columns:36px minmax(0,1fr) auto !important; gap:6px !important; }
  .orgw-ironport-objective > i { width:32px !important; height:32px !important; font-size:18px !important; }
  .orgw-ironport-objective strong { font-size:13px !important; }
  .orgw-ironport-objective span { font-size:11px !important; }
  .orgw-ironport-objective-source { font-size:9px !important; }
  .orgw-ironport-handover-grid { gap:7px; }
  .orgw-ironport-handover-item { min-height:105px; grid-template-columns:58px minmax(0,1fr); gap:6px; padding:6px; }
  .orgw-ironport-handover-item > img { width:56px; height:56px; }
  .orgw-ironport-handover-item > i { width:52px; height:52px; font-size:28px; }
  .orgw-ironport-handover-item strong { font-size:12px; }
  .orgw-ironport-handover-item b { font-size:11px; }
  .orgw-ironport-handover-item small { font-size:9px; }
}


/* ========================================================================
   ORG World 0.1.64 — clearer NPC nameplate and readable mission setup
   ======================================================================== */
.orgw-mission-frame.has-speaker .orgw-mission-frame-title {
  left:26.1% !important;
  top:12.35% !important;
  width:53.6% !important;
  height:7.9% !important;
  padding:0 1.2% !important;
  font-size:clamp(24px,2.12vw,40px) !important;
  line-height:1.02 !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-chapter {
  left:26.1% !important;
  top:20.75% !important;
  width:53.6% !important;
  font-size:clamp(13px,.88vw,18px) !important;
  letter-spacing:.05em !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-portrait {
  left:5.2% !important;
  top:8.2% !important;
  width:18.1% !important;
  height:22.6% !important;
}
.orgw-mission-frame-speaker {
  position:absolute;
  left:3.7%;
  top:32.25%;
  width:24.2%;
  z-index:3;
  text-align:center;
  pointer-events:none;
}
.orgw-mission-frame-nameplate {
  display:block;
  padding:10px 12px 9px;
  border-radius:13px;
  border:2px solid #a56d24;
  background:linear-gradient(180deg,#fff8e4,#ead2a0 58%,#d8b06d);
  color:#5a3414;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.03em;
  box-shadow:0 4px 10px rgba(61,31,10,.18), inset 0 1px rgba(255,255,255,.9);
  font-size:clamp(14px,1.12vw,24px);
  line-height:1.05;
}
.orgw-mission-frame-speaker-role {
  margin-top:7px;
  color:#6d4b20;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:clamp(11px,.72vw,16px);
  line-height:1.12;
  text-shadow:0 1px rgba(255,255,255,.72);
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-content {
  top:30.8% !important;
  height:53.7% !important;
  padding:1.2% 1.9% 1.1% !important;
  gap:clamp(7px,.72vh,12px) !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-copy:first-of-type,
.orgw-mission-frame.has-speaker .orgw-mission-frame-intro:first-of-type,
.orgw-mission-frame.has-speaker .orgw-ironport-visit-notice:first-of-type {
  margin-left:26.8% !important;
  min-height:84px;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-copy:first-of-type {
  padding:12px 16px !important;
  border:2px solid rgba(191,155,91,.52);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,251,239,.97),rgba(243,227,188,.92));
  box-shadow:inset 0 1px rgba(255,255,255,.92);
  font-size:clamp(18px,1.22vw,25px) !important;
  line-height:1.3 !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-intro:first-of-type,
.orgw-mission-frame.has-speaker .orgw-ironport-visit-notice:first-of-type {
  border-radius:14px;
}
.orgw-mission-frame.has-speaker .orgw-ironport-objective {
  min-height:84px !important;
  border-radius:16px !important;
  border-width:2px !important;
}
.orgw-mission-frame.has-speaker .orgw-ironport-objective strong { font-size:clamp(16px,1.02vw,21px) !important; }
.orgw-mission-frame.has-speaker .orgw-ironport-objective span { font-size:clamp(13px,.84vw,17px) !important; }
.orgw-mission-frame.has-speaker .orgw-ironport-story-rewards {
  border-radius:14px;
  border:2px solid rgba(183,145,83,.45);
  background:linear-gradient(180deg,rgba(249,238,205,.92),rgba(236,215,167,.92));
}
.orgw-mission-frame.has-speaker .orgw-ironport-handover-grid { gap:14px !important; }
.orgw-mission-frame.has-speaker .orgw-ironport-handover-item {
  min-height:148px;
  border-radius:16px;
  box-shadow:0 8px 16px rgba(69,41,12,.18), inset 0 1px #fff;
}
@media (max-width:900px),(max-height:650px) {
  .orgw-mission-frame.has-speaker .orgw-mission-frame-title {
    top:12.55% !important;
    font-size:clamp(20px,2.15vw,31px) !important;
  }
  .orgw-mission-frame.has-speaker .orgw-mission-frame-chapter { top:20.95% !important; font-size:10px !important; }
  .orgw-mission-frame-speaker { left:3.4%; top:32.4%; width:24.9%; }
  .orgw-mission-frame-nameplate { padding:7px 9px 6px; font-size:clamp(11px,1.08vw,17px); }
  .orgw-mission-frame-speaker-role { margin-top:4px; font-size:9px; }
  .orgw-mission-frame.has-speaker .orgw-mission-frame-content { top:30.9% !important; height:53.9% !important; padding:.8% 1.25% !important; gap:5px !important; }
  .orgw-mission-frame.has-speaker .orgw-mission-frame-copy:first-of-type,
  .orgw-mission-frame.has-speaker .orgw-mission-frame-intro:first-of-type,
  .orgw-mission-frame.has-speaker .orgw-ironport-visit-notice:first-of-type { margin-left:27.4% !important; min-height:62px; }
  .orgw-mission-frame.has-speaker .orgw-mission-frame-copy:first-of-type { padding:8px 10px !important; font-size:clamp(14px,1.32vw,18px) !important; line-height:1.2 !important; }
  .orgw-mission-frame.has-speaker .orgw-ironport-objective { min-height:64px !important; }
  .orgw-mission-frame.has-speaker .orgw-ironport-objective strong { font-size:12px !important; }
  .orgw-mission-frame.has-speaker .orgw-ironport-objective span { font-size:10px !important; }
  .orgw-mission-frame.has-speaker .orgw-ironport-handover-item { min-height:110px; }
}


/* ========================================================================
   ORG World 0.1.66 — clean transparent Ironport actors + better city spacing
   ======================================================================== */
/* Use slightly smaller NPCs and spread them across the city so Ironport feels larger. */
.orgw-ironport-character {
  width:4.55% !important;
  height:13.8% !important;
  z-index:28 !important;
}
.orgw-ironport-character.is-dori {
  left:21.8% !important;
  top:57.8% !important;
}
.orgw-ironport-character.is-bram {
  left:59.8% !important;
  top:51.4% !important;
}
.orgw-ironport-character.is-hilda {
  left:75.8% !important;
  top:37.6% !important;
  width:4.85% !important;
  height:14.4% !important;
}
/* Stronger ground contact so the NPCs no longer feel like they float. */
.orgw-ironport-character::after {
  content:'' !important;
  position:absolute !important;
  left:16% !important;
  right:16% !important;
  bottom:6px !important;
  height:13px !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.34) 0%, rgba(0,0,0,.22) 48%, rgba(0,0,0,0) 76%) !important;
  z-index:-1 !important;
  pointer-events:none !important;
}
.orgw-ironport-character img {
  object-fit:contain !important;
  object-position:center bottom !important;
}
.orgw-ironport-character span {
  font-size:clamp(12px,.74vw,16px) !important;
  padding:4px 8px !important;
}
/* Place the transparent lighthouse on the reserved build platform, scaled to fit cleanly. */
.orgw-ironport-prop-button.is-lighthouse {
  left:2.8% !important;
  top:7.6% !important;
  width:14.2% !important;
  height:37.5% !important;
  z-index:18 !important;
}
.orgw-ironport-prop-button.is-lighthouse img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.24)) !important;
}
@media (max-width:900px),(max-height:650px) {
  .orgw-ironport-character { width:4.95% !important; height:14.6% !important; }
  .orgw-ironport-character.is-dori { left:21.4% !important; top:57.5% !important; }
  .orgw-ironport-character.is-bram { left:59.2% !important; top:50.9% !important; }
  .orgw-ironport-character.is-hilda { left:75.2% !important; top:37.0% !important; width:5.25% !important; height:15.2% !important; }
  .orgw-ironport-prop-button.is-lighthouse { left:2.2% !important; top:7.4% !important; width:15.2% !important; height:39.5% !important; }
}


/* ========================================================================
   ORG World 0.1.68 — Ironport NPC placement correction
   ======================================================================== */
/* Reposition NPCs so they stand on valid ground areas and feel spread across the city. */
.orgw-ironport-character {
  width:4.35% !important;
  height:13.25% !important;
}
.orgw-ironport-character.is-dori {
  left:29.6% !important;
  top:54.1% !important;
}
.orgw-ironport-character.is-bram {
  left:58.2% !important;
  top:49.4% !important;
}
.orgw-ironport-character.is-hilda {
  left:79.2% !important;
  top:41.6% !important;
  width:4.55% !important;
  height:13.8% !important;
}
@media (max-width:900px),(max-height:650px) {
  .orgw-ironport-character { width:4.75% !important; height:14.05% !important; }
  .orgw-ironport-character.is-dori { left:29.0% !important; top:53.8% !important; }
  .orgw-ironport-character.is-bram { left:57.6% !important; top:48.9% !important; }
  .orgw-ironport-character.is-hilda { left:78.6% !important; top:41.1% !important; width:4.95% !important; height:14.4% !important; }
}


/* ========================================================================
   ORG World 0.1.69 — large readable Market Cart and Season Goals typography
   ======================================================================== */
/* Market Cart: visually match the large-text reference while preserving all actions. */
.orgw-market-template-message strong {
  font-size:32px !important;
  line-height:1.06 !important;
}
.orgw-market-template-message span {
  font-size:21px !important;
  line-height:1.2 !important;
}
.orgw-market-card-name {
  font-size:22px !important;
  line-height:1.06 !important;
  font-weight:950 !important;
  white-space:normal !important;
}
.orgw-market-card-count {
  font-size:18px !important;
  line-height:1.05 !important;
  font-weight:850 !important;
}
.orgw-market-card-price {
  font-size:23px !important;
  line-height:1 !important;
  font-weight:950 !important;
}
[data-org-world] .orgw-market-card-sell-one,
[data-org-world] .orgw-market-card-sell-all {
  font-size:16px !important;
  line-height:1 !important;
}
.orgw-market-template-footer {
  font-size:22px !important;
  line-height:1.16 !important;
  font-weight:900 !important;
}
.orgw-market-template-card > img,
.orgw-market-card-image {
  max-height:58% !important;
}

/* Season Goals: larger headings, contract progress and monthly mission text. */
.orgw-season-frame-header strong {
  font-size:28px !important;
  line-height:1.03 !important;
}
.orgw-season-frame-header span {
  font-size:14px !important;
  line-height:1.05 !important;
  font-weight:900 !important;
}
.orgw-season-frame-overflow-copy strong {
  font-size:24px !important;
  line-height:1.02 !important;
}
.orgw-season-frame-overflow-copy span {
  font-size:15px !important;
  line-height:1.08 !important;
}
[data-org-world] .orgw-season-frame-overflow button {
  font-size:15px !important;
  line-height:1 !important;
}
.orgw-season-frame-weekly h3 {
  font-size:23px !important;
  line-height:1 !important;
}
.orgw-season-weekly-item b {
  font-size:18px !important;
  line-height:1.02 !important;
}
.orgw-season-weekly-item em,
.orgw-season-weekly-status {
  font-size:18px !important;
  line-height:1.02 !important;
}
.orgw-season-frame-missions > h3 {
  font-size:22px !important;
  line-height:1 !important;
}
.orgw-season-frame-mission {
  grid-template-rows:minmax(0,34%) auto minmax(0,1fr) auto auto !important;
  gap:1.4% !important;
}
.orgw-season-frame-mission-icon {
  width:64% !important;
}
.orgw-season-frame-mission strong {
  font-size:17px !important;
  line-height:1.04 !important;
}
.orgw-season-frame-mission span {
  font-size:13px !important;
  line-height:1.08 !important;
}
.orgw-season-frame-mission small {
  font-size:16px !important;
  line-height:1.03 !important;
  font-weight:900 !important;
}
.orgw-season-frame-mission i,
.orgw-season-frame-mission b,
[data-org-world] .orgw-season-frame-mission button {
  font-size:15px !important;
  line-height:1 !important;
}

@media (max-width:900px),(max-height:650px) {
  .orgw-market-template-message strong { font-size:25px !important; }
  .orgw-market-template-message span { font-size:17px !important; }
  .orgw-market-card-name { font-size:18px !important; }
  .orgw-market-card-count { font-size:14px !important; }
  .orgw-market-card-price { font-size:19px !important; }
  [data-org-world] .orgw-market-card-sell-one,
  [data-org-world] .orgw-market-card-sell-all { font-size:13px !important; }
  .orgw-market-template-footer { font-size:18px !important; }

  .orgw-season-frame-header strong { font-size:23px !important; }
  .orgw-season-frame-header span { font-size:12px !important; }
  .orgw-season-frame-overflow-copy strong { font-size:19px !important; }
  .orgw-season-frame-overflow-copy span { font-size:12px !important; }
  [data-org-world] .orgw-season-frame-overflow button { font-size:12px !important; }
  .orgw-season-frame-weekly h3 { font-size:19px !important; }
  .orgw-season-weekly-item b { font-size:14px !important; }
  .orgw-season-weekly-item em,
  .orgw-season-weekly-status { font-size:14px !important; }
  .orgw-season-frame-missions > h3 { font-size:18px !important; }
  .orgw-season-frame-mission strong { font-size:14px !important; }
  .orgw-season-frame-mission span { font-size:11px !important; }
  .orgw-season-frame-mission small { font-size:13px !important; }
  .orgw-season-frame-mission i,
  .orgw-season-frame-mission b,
  [data-org-world] .orgw-season-frame-mission button { font-size:12px !important; }
}


/* ========================================================================
   ORG World 0.1.70 — conservative mobile load and compositor repair
   No gameplay, reward, mission or balance rules are changed.
   ======================================================================== */
@media (hover:none), (pointer:coarse) {
  /* Android WebView can create a separate GPU layer for every blurred or
     backface-hidden child. Keep only the camera surface composited. */
  [data-org-world] .orgw-topbar,
  [data-org-world] .orgw-utility-buttons,
  [data-org-world] .orgw-scene-note,
  [data-org-world] .orgw-ork-panel,
  [data-org-world] .orgw-task-summary,
  [data-org-world] .orgw-wood-label,
  [data-org-world] .orgw-plot-empty-badge,
  [data-org-world] .orgw-plot-overlay,
  [data-org-world] .orgw-grow-time,
  [data-org-world] .orgw-pen-label,
  [data-org-world] .orgw-plot-label,
  [data-org-world] .orgw-modal-backdrop {
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }
  [data-org-world] .orgw-camera-surface > * {
    -webkit-backface-visibility:visible !important;
    backface-visibility:visible !important;
  }
  [data-org-world] .orgw-camera-surface {
    contain:layout style !important;
  }
  [data-org-world] .orgw-ironport-scene {
    contain:layout style !important;
  }
  [data-org-world] .orgw-hotspot,
  [data-org-world] .orgw-ironport-character,
  [data-org-world] .orgw-ironport-prop-button,
  [data-org-world] .orgw-ironport-ship {
    transition:none !important;
  }
  /* Keep mission state clear, but remove continuous full-sprite pulse filters. */
  [data-org-world] .orgw-ironport-character.is-mission-active,
  [data-org-world] .orgw-ironport-character.is-mission-ready {
    animation:none !important;
  }
  [data-org-world] .orgw-ironport-character.is-mission-ready {
    filter:drop-shadow(0 0 10px rgba(118,255,126,.58)) !important;
  }
  [data-org-world] .orgw-ironport-home-marker.is-ready {
    animation:none !important;
    filter:drop-shadow(0 0 10px rgba(255,214,84,.55)) !important;
  }
  body.orgw-modal-open [data-org-world] .orgw-main-org-sprite,
  body.orgw-modal-open [data-org-world] .orgw-quest-character,
  body.orgw-modal-open [data-org-world] .orgw-needs-button.is-low,
  body.orgw-modal-open [data-org-world] .orgw-task-board.is-track-target {
    animation-play-state:paused !important;
  }
}

/* Baked Ironport structures are intentionally not represented by images in
   the live DOM anymore. The transparent buttons remain as interaction zones. */
.orgw-ironport-prop-button.is-crane,
.orgw-ironport-prop-button.is-office,
.orgw-ironport-ship {
  background:transparent !important;
}


/* ========================================================================
   ORG World 0.1.71 — mission content graphics, boar and crop clarity
   ======================================================================== */
.orgw-ironport-reward-row b { display:inline-flex !important; align-items:center; gap:7px; }
.orgw-ironport-reward-row b img { width:34px; height:34px; object-fit:contain; flex:0 0 auto; }
.orgw-animal-pen-card img[src*="animal-shop-boar"] { transform:scale(1.08); transform-origin:center bottom; }
.orgw-world-crops img[src*="potato-stage"],
.orgw-world-crops img[src*="rye-stage"] { image-rendering:auto; }
.orgw-mission-handover-visual img,
.orgw-ironport-handover-item img { object-fit:contain; }
@media (max-width:900px),(max-height:650px) {
  .orgw-ironport-reward-row b img { width:25px; height:25px; }
}


/* ========================================================================
   ORG World 0.1.72 — boar animation, reliable swipe and Home far-zoom repair
   ======================================================================== */
/* Put invisible arrow hit areas directly over the painted arrows and extend
   them inward, rather than outside the panel edge. */
.orgw-animal-pen-arrow.is-prev { left:7.0% !important; top:48.6% !important; width:8.0% !important; height:16.0% !important; }
.orgw-animal-pen-arrow.is-next { left:85.0% !important; top:48.6% !important; width:8.0% !important; height:16.0% !important; }
.orgw-market-template-arrow.is-prev { left:7.0% !important; top:47.8% !important; width:8.0% !important; height:16.0% !important; }
.orgw-market-template-arrow.is-next { left:85.0% !important; top:47.8% !important; width:8.0% !important; height:16.0% !important; }
.orgw-field-template-arrow.is-prev { left:7.0% !important; top:49.0% !important; width:8.0% !important; height:16.0% !important; }
.orgw-field-template-arrow.is-next { left:85.0% !important; top:49.0% !important; width:8.0% !important; height:16.0% !important; }
.orgw-animal-pen-cards,
.orgw-market-template-stage,
.orgw-field-template-cards {
  touch-action:pan-y !important;
  overscroll-behavior:contain;
  -webkit-user-select:none;
  user-select:none;
}
body.orgw-mobile-app .orgw-pen-animal-sprite[data-animal="boar"] {
  min-height:31% !important;
  filter:drop-shadow(0 7px 6px rgba(42,25,8,.32)) !important;
}
/* Stop Android WebView's blue compositing tiles at the farthest Home zoom. */
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-camera-surface {
  will-change:auto !important;
  contain:layout style !important;
  transform-style:flat !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
}
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene > *,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene img,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene canvas {
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  transform-style:flat !important;
  background-color:transparent !important;
}
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-hotspot,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-world-pen-foreground,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-main-org-sprite {
  filter:none !important;
  box-shadow:none !important;
}
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-pen-animal-sprite,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-main-org-sprite,
body.orgw-mobile-app [data-org-world].is-home-far-zoom .orgw-home-scene .orgw-quest-character {
  animation-play-state:paused !important;
}


/* ========================================================================
   ORG World 0.1.73 — touch-first swipe + flat Home compositor
   ======================================================================== */
/* These three panels own horizontal gestures. Native touch events are captured
   by the runtime, so Android must not cancel them as browser panning. */
.orgw-animal-pen-stage,
.orgw-market-template-stage,
.orgw-field-template-stage {
  touch-action:none !important;
  overscroll-behavior:none !important;
  -webkit-user-select:none !important;
  user-select:none !important;
}
.orgw-animal-pen-cards,
.orgw-market-template-card,
.orgw-field-template-cards,
.orgw-field-template-card {
  touch-action:none !important;
}
/* Keep arrow hit boxes fully inside the popup and slightly larger than the art. */
.orgw-animal-pen-arrow.is-prev,
.orgw-market-template-arrow.is-prev,
.orgw-field-template-arrow.is-prev { left:8.0% !important; width:9.2% !important; }
.orgw-animal-pen-arrow.is-next,
.orgw-market-template-arrow.is-next,
.orgw-field-template-arrow.is-next { left:82.8% !important; width:9.2% !important; }

/* Home APK rendering uses the scene as a single CSS-background layer. The IMG
   remains in the DOM for web/plugin compatibility, but is not composited in APK. */
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera {
  background:#596a39 !important;
}
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-camera-surface {
  will-change:auto !important;
  transform-style:flat !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  contain:none !important;
  isolation:isolate;
}
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene {
  background-repeat:no-repeat !important;
  background-position:0 0 !important;
  background-size:100% 100% !important;
  background-color:#596a39 !important;
  transform-style:flat !important;
  contain:none !important;
}
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene > .orgw-world-bg {
  visibility:hidden !important;
  opacity:0 !important;
}
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene,
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene > *,
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene img,
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera .orgw-home-scene canvas {
  will-change:auto !important;
  transform-style:flat !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
}
/* ORG World 0.1.74 — Home overlay persistence during pinch zoom.
   Do not hide direct scene children. Keeping the existing flat 2D compositor path
   avoids the old blue WebView tiles while Market Cart, buildings, fields, NPCs,
   animals and other world objects remain rendered throughout the gesture. */
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera.is-camera-zooming .orgw-camera-surface,
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera.is-home-camera-settling .orgw-camera-surface {
  pointer-events:auto !important;
}
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera.is-camera-zooming .orgw-home-scene,
body.orgw-mobile-app [data-org-world] .orgw-world.is-home-software-camera.is-home-camera-settling .orgw-home-scene {
  filter:none !important;
  box-shadow:none !important;
}


/* ========================================================================
   ORG World 0.1.75 — visible market actions, bulk animal care and crop lift
   ======================================================================== */
/* Market Cart used transparent hitboxes in older template builds. The same
   editable positions now show two compact, readable buttons under every item. */
[data-org-world] .orgw-market-card-sell-one,
[data-org-world] .orgw-market-card-sell-all {
  display:grid !important;
  place-items:center !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 4px !important;
  opacity:1 !important;
  color:#fffdf0 !important;
  border:2px solid #5f7918 !important;
  border-radius:11px !important;
  background:linear-gradient(180deg,#a8c947 0%,#719727 56%,#5e811d 100%) !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.45),0 3px 5px rgba(82,49,13,.24) !important;
  text-shadow:0 1px 1px rgba(39,58,7,.72) !important;
  font:900 clamp(12px,.9vw,17px)/1 Georgia,serif !important;
  cursor:pointer !important;
  z-index:6 !important;
}
[data-org-world] .orgw-market-card-sell-all {
  color:#5b320c !important;
  border-color:#b77512 !important;
  background:linear-gradient(180deg,#ffd66b 0%,#f2b83d 56%,#dc9420 100%) !important;
  text-shadow:0 1px 0 rgba(255,246,192,.8) !important;
}
[data-org-world] .orgw-market-card-sell-one[disabled],
[data-org-world] .orgw-market-card-sell-all[disabled] {
  opacity:.48 !important;
  filter:grayscale(.55) !important;
  cursor:default !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35) !important;
}

/* Keep the ready potato and rye artwork in the upper part of its showcase,
   matching the intended blue target area without moving other crop stages. */
.orgw-field-template-status.is-ready.is-crop-potato > img,
.orgw-field-template-status.is-ready.is-crop-rye > img {
  transform:translateY(-26%) !important;
  transform-origin:center center !important;
}

/* One-tap Animal Pen actions live in the narrow clear strip below capacity. */
.orgw-animal-pen-bulk-actions {
  position:absolute;
  left:44.6%;
  top:37.45%;
  width:39.2%;
  height:5.15%;
  padding:0 1.2%;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  gap:2.2%;
  z-index:10;
  box-sizing:border-box;
}
[data-org-world] .orgw-animal-pen-bulk-actions button {
  min-width:0 !important;
  min-height:0 !important;
  padding:2px 10px !important;
  display:grid !important;
  place-content:center !important;
  gap:1px !important;
  border-radius:12px !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.5),0 3px 5px rgba(73,43,15,.22) !important;
  cursor:pointer !important;
}
[data-org-world] .orgw-animal-pen-bulk-actions button strong {
  font:900 clamp(13px,1vw,19px)/1 Georgia,serif !important;
}
[data-org-world] .orgw-animal-pen-bulk-actions button span {
  font:800 clamp(8px,.63vw,12px)/1.05 Arial,sans-serif !important;
}
[data-org-world] .orgw-animal-pen-feed-all {
  color:#fffdeb !important;
  border:2px solid #587713 !important;
  background:linear-gradient(180deg,#aacb46,#719628 58%,#5c7e1d) !important;
  text-shadow:0 1px 1px rgba(42,61,8,.75) !important;
}
[data-org-world] .orgw-animal-pen-collect-all {
  color:#59320d !important;
  border:2px solid #b77816 !important;
  background:linear-gradient(180deg,#ffda73,#efb33a 58%,#da921d) !important;
  text-shadow:0 1px 0 rgba(255,245,190,.85) !important;
}
[data-org-world] .orgw-animal-pen-bulk-actions button[disabled] {
  opacity:.46 !important;
  filter:grayscale(.58) !important;
  cursor:default !important;
}
@media (max-width:900px),(max-height:650px) {
  [data-org-world] .orgw-market-card-sell-one,
  [data-org-world] .orgw-market-card-sell-all { border-radius:8px !important; font-size:12px !important; }
  [data-org-world] .orgw-animal-pen-bulk-actions button { border-radius:8px !important; padding:1px 5px !important; }
  [data-org-world] .orgw-animal-pen-bulk-actions button strong { font-size:12px !important; }
  [data-org-world] .orgw-animal-pen-bulk-actions button span { font-size:8px !important; }
}

/* Bram Ironledger mission/shop split */
.orgw-world-area.is-ironport .orgw-ironport-character.is-bram {
  left: 56.2% !important;
  top: 57.2% !important;
}
@media (max-width: 1280px) {
  .orgw-world-area.is-ironport .orgw-ironport-character.is-bram {
    left: 56.6% !important;
    top: 58.1% !important;
  }
}
@media (max-width: 900px) {
  .orgw-world-area.is-ironport .orgw-ironport-character.is-bram {
    left: 57.2% !important;
    top: 59.2% !important;
  }
}

.orgw-modal.is-bram-shop .orgw-modal-card {
  width: min(96vw, 1240px);
  max-width: 1240px;
  padding: 0;
  overflow: hidden;
  background: linear-gradient(180deg, #fbf3dc 0%, #f4e6bf 100%);
}
.orgw-bram-shop-panel {
  display: grid;
  grid-template-rows: auto minmax(240px, 30vw) auto auto;
  gap: 14px;
  padding: 16px;
}
.orgw-bram-shop-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.orgw-bram-shop-header h2 {
  margin: 3px 0 6px;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1;
  color: #4d2e14;
}
.orgw-bram-shop-header p {
  margin: 0;
  max-width: 900px;
  font-size: 15px;
  line-height: 1.42;
  color: #6a4923;
}
.orgw-bram-shop-close {
  width: 54px;
  height: 54px;
  border: 0;
  border-radius: 50%;
  background: linear-gradient(180deg, #ec8a4e 0%, #d25a1b 100%);
  color: #fff6e4;
  font-size: 36px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 10px 20px rgba(86, 40, 9, .24);
}
.orgw-bram-shop-hero {
  position: relative;
  min-height: 240px;
  border-radius: 26px;
  background-color: #70431f;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  border: 2px solid rgba(141, 96, 44, .36);
}
.orgw-bram-shop-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(31, 17, 6, .08) 8%, rgba(31, 17, 6, .46) 100%);
}
.orgw-bram-shop-hero-copy {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 16px;
  z-index: 1;
  display: grid;
  gap: 6px;
  padding: 12px 14px;
  border-radius: 18px;
  background: rgba(44, 25, 9, .66);
  color: #fff3d7;
}
.orgw-bram-shop-hero-copy strong {
  font-size: 19px;
}
.orgw-bram-shop-hero-copy span {
  font-size: 14px;
  line-height: 1.4;
}
.orgw-bram-shop-carousel {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) 54px;
  gap: 10px;
  align-items: center;
}
.orgw-bram-shop-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.orgw-bram-shop-nav {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  border: 2px solid rgba(166, 120, 58, .42);
  background: linear-gradient(180deg, #f8d57d 0%, #d9a541 100%);
  color: #6b390b;
  font-size: 32px;
  font-weight: 800;
  cursor: pointer;
}
.orgw-bram-shop-nav:disabled {
  opacity: .45;
  cursor: default;
}
.orgw-bram-shop-card {
  display: grid;
  grid-template-rows: auto auto 8px auto;
  gap: 10px;
  padding: 14px;
  border-radius: 22px;
  background: rgba(255, 251, 240, .92);
  border: 2px solid rgba(186, 141, 80, .34);
  box-shadow: 0 14px 22px rgba(83, 48, 14, .08);
}
.orgw-bram-shop-card.is-ready {
  border-color: rgba(101, 166, 68, .72);
}
.orgw-bram-shop-card.is-soldout {
  opacity: .78;
}
.orgw-bram-shop-card-top {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}
.orgw-bram-shop-card-icon {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(253, 244, 216, .98) 0%, rgba(243, 227, 185, .98) 100%);
}
.orgw-bram-shop-card-icon img {
  width: 76px;
  height: 76px;
  object-fit: contain;
}
.orgw-bram-shop-card-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.orgw-bram-shop-card-copy strong {
  font-size: 21px;
  line-height: 1.05;
  color: #4c2e11;
}
.orgw-bram-shop-card-copy span {
  font-size: 14px;
  line-height: 1.35;
  color: #75502a;
}
.orgw-bram-shop-card-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 13px;
  color: #7a5a2f;
}
.orgw-bram-shop-progress {
  position: relative;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(120, 82, 34, .12);
}
.orgw-bram-shop-progress > span {
  display: block;
  width: var(--p, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ebaf34 0%, #73b74f 100%);
}
.orgw-bram-shop-card-action {
  min-height: 48px;
  border-radius: 16px;
  border: 0;
  background: linear-gradient(180deg, #f2b84b 0%, #d68819 100%);
  color: #4f2c0a;
  font-weight: 800;
  font-size: 16px;
  cursor: pointer;
}
.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #8fd45d 0%, #61a93d 100%);
  color: #17330a;
}
.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #d4c3a0 0%, #b39c74 100%);
  color: #664924;
}
.orgw-bram-shop-footer {
  display: grid;
  gap: 8px;
  justify-items: center;
  text-align: center;
}
.orgw-bram-shop-footer p {
  margin: 0;
  font-size: 14px;
  color: #7c552b;
}
.orgw-bram-shop-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.orgw-bram-shop-dot {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 0;
  background: rgba(142, 114, 72, .35);
  cursor: pointer;
}
.orgw-bram-shop-dot.is-active {
  background: #d6a23c;
}
@media (max-width: 1024px) {
  .orgw-bram-shop-panel {
    grid-template-rows: auto minmax(220px, 34vw) auto auto;
    padding: 14px;
  }
  .orgw-bram-shop-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 680px) {
  .orgw-modal.is-bram-shop .orgw-modal-card {
    width: min(98vw, 98vw);
  }
  .orgw-bram-shop-panel {
    gap: 12px;
    padding: 12px;
  }
  .orgw-bram-shop-header {
    gap: 10px;
  }
  .orgw-bram-shop-header h2 {
    font-size: 28px;
  }
  .orgw-bram-shop-header p {
    font-size: 13px;
  }
  .orgw-bram-shop-carousel {
    grid-template-columns: 42px minmax(0, 1fr) 42px;
    gap: 8px;
  }
  .orgw-bram-shop-nav {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    font-size: 26px;
  }
  .orgw-bram-shop-card {
    padding: 12px;
  }
  .orgw-bram-shop-card-top {
    grid-template-columns: 68px minmax(0, 1fr);
  }
  .orgw-bram-shop-card-icon {
    width: 68px;
    height: 68px;
  }
  .orgw-bram-shop-card-icon img {
    width: 58px;
    height: 58px;
  }
  .orgw-bram-shop-card-copy strong {
    font-size: 17px;
  }
  .orgw-bram-shop-card-copy span,
  .orgw-bram-shop-card-meta,
  .orgw-bram-shop-footer p,
  .orgw-bram-shop-hero-copy span {
    font-size: 12px;
  }
  .orgw-bram-shop-card-action {
    min-height: 44px;
    font-size: 14px;
  }
}

/* ========================================================================
   ORG World 0.1.77 — Correct harbor shop hotspot and full-screen Bram shop
   ======================================================================== */
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 42.1% !important;
  top: 42.0% !important;
  width: 22.2% !important;
  height: 34.2% !important;
  z-index: 27 !important;
  overflow: visible !important;
  border-radius: 34% 34% 24% 24% !important;
  background: radial-gradient(ellipse at 52% 48%, rgba(255, 210, 88, .23) 0%, rgba(255, 182, 44, .10) 48%, rgba(255, 166, 38, 0) 76%) !important;
  box-shadow: 0 0 0 2px rgba(255, 220, 125, .20), 0 0 28px rgba(255, 182, 44, .25) !important;
  animation: orgwBramShopGlow 2.5s ease-in-out infinite !important;
  transform: none !important;
  filter: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '';
  position: absolute;
  inset: 7% 7% 8%;
  border-radius: 30% 30% 22% 22%;
  border: 2px solid rgba(255, 229, 151, .30);
  box-shadow: inset 0 0 24px rgba(255, 197, 67, .12);
  pointer-events: none;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  content: 'SUPPLY SHOP';
  position: absolute;
  left: 50%;
  top: 8%;
  transform: translate(-50%, -100%);
  padding: 5px 12px;
  border: 1px solid rgba(109, 62, 17, .72);
  border-radius: 999px;
  background: rgba(255, 239, 194, .95);
  color: #633812;
  font-size: clamp(11px, .72vw, 16px);
  font-weight: 900;
  letter-spacing: .06em;
  white-space: nowrap;
  box-shadow: 0 6px 14px rgba(32, 15, 3, .28);
  pointer-events: none;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office:hover,
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office:focus-visible {
  background: radial-gradient(ellipse at 52% 48%, rgba(255, 224, 120, .34) 0%, rgba(255, 185, 46, .18) 50%, rgba(255, 166, 38, 0) 78%) !important;
  box-shadow: 0 0 0 3px rgba(255, 226, 139, .32), 0 0 40px rgba(255, 188, 58, .38) !important;
}
@keyframes orgwBramShopGlow {
  0%, 100% { opacity: .84; }
  50% { opacity: 1; }
}

/* Bram stands on the harbor walkway when mission work requires him. */
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 64.2% !important;
  top: 50.8% !important;
  width: 4.8% !important;
  height: 14.4% !important;
  z-index: 31 !important;
}

.orgw-modal.is-bram-shop {
  inset: 0 !important;
  padding: 0 !important;
  place-items: stretch !important;
  background: #1a0e05 !important;
}
.orgw-modal.is-bram-shop[hidden] {
  display: none !important;
}
.orgw-modal.is-bram-shop .orgw-modal-backdrop {
  display: none !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card {
  position: absolute !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100% !important;
  height: 100dvh !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #1a0e05 !important;
  box-shadow: none !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card > .orgw-modal-close {
  display: none !important;
}
.orgw-modal.is-bram-shop [data-modal-content] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.orgw-bram-shop-panel {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #fff5df;
  background: #1c1007 !important;
}
.orgw-bram-shop-interior {
  position: absolute;
  inset: 0;
  background-image: var(--orgw-bram-shop-background);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.002);
}
.orgw-bram-shop-interior::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(12, 6, 2, .48) 0%, rgba(12, 6, 2, .02) 22%, rgba(12, 6, 2, .03) 58%, rgba(12, 6, 2, .65) 100%),
    linear-gradient(90deg, rgba(7, 3, 1, .22), transparent 20%, transparent 80%, rgba(7, 3, 1, .20));
  pointer-events: none;
}
.orgw-bram-shop-header {
  position: absolute !important;
  z-index: 4;
  left: max(24px, env(safe-area-inset-left));
  right: max(24px, env(safe-area-inset-right));
  top: max(18px, env(safe-area-inset-top));
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  pointer-events: none;
}
.orgw-bram-shop-title {
  max-width: min(620px, 56vw);
  padding: 14px 20px 15px;
  border: 1px solid rgba(255, 220, 151, .34);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(45, 23, 8, .88), rgba(31, 15, 5, .73));
  box-shadow: 0 12px 30px rgba(0, 0, 0, .30);
  backdrop-filter: blur(4px);
  pointer-events: auto;
}
.orgw-bram-shop-title > span {
  display: block;
  margin-bottom: 3px;
  color: #f5c76a;
  font-size: clamp(12px, .9vw, 18px);
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
}
.orgw-bram-shop-title h2 {
  margin: 0 0 4px !important;
  color: #fff1cd !important;
  font-size: clamp(27px, 2.4vw, 48px) !important;
  line-height: 1 !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, .35);
}
.orgw-bram-shop-title p {
  margin: 0 !important;
  color: #f5e1b9 !important;
  font-size: clamp(13px, .92vw, 18px) !important;
  line-height: 1.3 !important;
}
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  pointer-events: auto;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-width: 170px !important;
  min-height: 58px !important;
  padding: 11px 20px !important;
  border: 2px solid rgba(255, 228, 161, .68) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(201, 112, 37, .98), rgba(133, 61, 15, .98)) !important;
  color: #fff5df !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 255, 255, .24) !important;
  font-size: clamp(16px, 1.1vw, 22px) !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus-visible {
  background: linear-gradient(180deg, #e08a42, #a44918) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .40), 0 0 0 3px rgba(255, 213, 124, .24) !important;
}
.orgw-bram-shop-exit span {
  font-size: 26px;
  line-height: 1;
}
.orgw-bram-shop-rule {
  position: absolute;
  z-index: 4;
  left: max(24px, env(safe-area-inset-left));
  bottom: clamp(266px, 34vh, 360px);
  display: grid;
  gap: 2px;
  max-width: min(620px, 54vw);
  padding: 9px 14px;
  border-left: 4px solid #f2b84c;
  border-radius: 6px 14px 14px 6px;
  background: rgba(29, 14, 5, .72);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .24);
}
.orgw-bram-shop-rule strong {
  color: #ffd98b;
  font-size: clamp(13px, .86vw, 17px);
}
.orgw-bram-shop-rule span {
  color: #f7e6c7;
  font-size: clamp(11px, .72vw, 15px);
  line-height: 1.28;
}
.orgw-bram-shop-carousel {
  position: absolute !important;
  z-index: 5;
  left: max(18px, env(safe-area-inset-left));
  right: max(18px, env(safe-area-inset-right));
  bottom: max(52px, calc(env(safe-area-inset-bottom) + 44px));
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) 56px !important;
  align-items: stretch !important;
  gap: 12px !important;
  padding: 14px !important;
  border: 1px solid rgba(255, 224, 157, .30);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(39, 20, 8, .90), rgba(23, 11, 4, .94));
  box-shadow: 0 18px 50px rgba(0, 0, 0, .46);
  backdrop-filter: blur(5px);
}
.orgw-bram-shop-cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  min-width: 0 !important;
}
[data-org-world] button.orgw-bram-shop-nav,
[data-org-world] button.orgw-bram-shop-nav:hover,
[data-org-world] button.orgw-bram-shop-nav:focus,
[data-org-world] button.orgw-bram-shop-nav:active {
  width: 56px !important;
  min-width: 56px !important;
  height: auto !important;
  min-height: 100% !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 221, 145, .54) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, rgba(228, 164, 66, .96), rgba(158, 91, 24, .96)) !important;
  color: #fff2d1 !important;
  font-size: 38px !important;
  font-weight: 900 !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .24) !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-nav:disabled {
  opacity: .34 !important;
}
.orgw-bram-shop-card {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto 7px auto !important;
  gap: 7px !important;
  min-width: 0 !important;
  min-height: 188px !important;
  padding: 11px !important;
  border: 1px solid rgba(225, 183, 105, .48) !important;
  border-radius: 17px !important;
  background: linear-gradient(180deg, rgba(255, 248, 227, .97), rgba(239, 218, 175, .96)) !important;
  color: #4a2a0d !important;
  box-shadow: 0 9px 20px rgba(0, 0, 0, .22) !important;
}
.orgw-bram-shop-card.is-ready {
  border-color: rgba(129, 213, 82, .85) !important;
  box-shadow: 0 0 0 2px rgba(125, 204, 78, .24), 0 9px 20px rgba(0, 0, 0, .22) !important;
}
.orgw-bram-shop-card-top {
  display: grid !important;
  grid-template-columns: minmax(58px, 34%) minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: center !important;
  min-height: 0 !important;
}
.orgw-bram-shop-card-icon {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 92px !important;
  border-radius: 13px !important;
  background: rgba(255, 253, 244, .58) !important;
}
.orgw-bram-shop-card-icon img {
  width: 86% !important;
  height: 86% !important;
  object-fit: contain !important;
}
.orgw-bram-shop-card-copy strong {
  display: block !important;
  color: #4a2a0d !important;
  font-size: clamp(15px, 1vw, 20px) !important;
  line-height: 1.05 !important;
}
.orgw-bram-shop-card-copy span {
  display: block !important;
  margin-top: 4px !important;
  color: #79522a !important;
  font-size: clamp(11px, .72vw, 15px) !important;
  line-height: 1.22 !important;
}
.orgw-bram-shop-card-meta {
  display: flex !important;
  justify-content: space-between !important;
  gap: 8px !important;
  color: #74522e !important;
  font-size: clamp(10px, .64vw, 13px) !important;
  line-height: 1.1 !important;
}
.orgw-bram-shop-progress {
  height: 7px !important;
  border-radius: 999px !important;
  background: rgba(86, 52, 17, .17) !important;
  overflow: hidden !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  background: linear-gradient(90deg, #e8a72e, #71b74b) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  min-height: 42px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(109, 63, 15, .42) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #f2be53, #cf8018) !important;
  color: #4d2b08 !important;
  font-size: clamp(13px, .82vw, 17px) !important;
  font-weight: 900 !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #9adb67, #5fa63c) !important;
  color: #173307 !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #cfbea0, #a99370) !important;
  color: #62451f !important;
}
.orgw-bram-shop-footer {
  position: absolute !important;
  z-index: 6;
  left: 50% !important;
  bottom: max(10px, env(safe-area-inset-bottom)) !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: auto !important;
  white-space: nowrap !important;
}
.orgw-bram-shop-dots {
  display: flex !important;
  gap: 8px !important;
}
[data-org-world] button.orgw-bram-shop-dot,
[data-org-world] button.orgw-bram-shop-dot:hover,
[data-org-world] button.orgw-bram-shop-dot:focus,
[data-org-world] button.orgw-bram-shop-dot:active {
  width: 13px !important;
  min-width: 13px !important;
  height: 13px !important;
  min-height: 13px !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 231, 176, .62) !important;
  border-radius: 50% !important;
  background: rgba(83, 48, 14, .78) !important;
}
[data-org-world] button.orgw-bram-shop-dot.is-active {
  background: #f2b746 !important;
  box-shadow: 0 0 10px rgba(242, 183, 70, .68) !important;
}
.orgw-bram-shop-footer p {
  margin: 0 !important;
  color: #f4dfb4 !important;
  font-size: clamp(11px, .68vw, 14px) !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, .55);
}
@media (max-width: 980px), (max-height: 620px) {
  .orgw-bram-shop-header {
    left: 14px !important;
    right: 14px !important;
    top: 10px !important;
  }
  .orgw-bram-shop-title {
    max-width: 54vw !important;
    padding: 9px 13px 10px !important;
  }
  .orgw-bram-shop-title h2 {
    font-size: 27px !important;
  }
  .orgw-bram-shop-title p {
    font-size: 12px !important;
  }
  [data-org-world] button.orgw-bram-shop-exit {
    min-width: 142px !important;
    min-height: 48px !important;
    padding: 8px 14px !important;
    font-size: 15px !important;
  }
  .orgw-bram-shop-rule {
    display: none !important;
  }
  .orgw-bram-shop-carousel {
    left: 10px !important;
    right: 10px !important;
    bottom: 34px !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    gap: 8px !important;
    padding: 9px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 44px !important;
    min-width: 44px !important;
    font-size: 30px !important;
  }
  .orgw-bram-shop-cards {
    gap: 8px !important;
  }
  .orgw-bram-shop-card {
    min-height: 154px !important;
    padding: 8px !important;
    gap: 5px !important;
  }
  .orgw-bram-shop-card-icon {
    height: 68px !important;
  }
  .orgw-bram-shop-card-copy strong {
    font-size: 14px !important;
  }
  .orgw-bram-shop-card-copy span,
  .orgw-bram-shop-card-meta {
    font-size: 10px !important;
  }
  [data-org-world] button.orgw-bram-shop-card-action {
    min-height: 34px !important;
    font-size: 12px !important;
  }
  .orgw-bram-shop-footer p {
    display: none !important;
  }
}


/* ========================================================================
   ORG World 0.1.78 — Bram harbor shop placement + interior scene repair
   ======================================================================== */
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 45.1% !important;
  top: 52.2% !important;
  width: 14.9% !important;
  height: 23.5% !important;
  z-index: 27 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 50% !important;
  overflow: visible !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '';
  position: absolute;
  left: 8%;
  top: 10%;
  width: 84%;
  height: 78%;
  border-radius: 50%;
  border: 2px solid rgba(255, 222, 133, .38);
  background: radial-gradient(circle at 50% 52%, rgba(255, 210, 92, .18) 0%, rgba(255, 183, 65, .12) 42%, rgba(255, 183, 65, 0) 72%);
  box-shadow: 0 0 0 8px rgba(255, 194, 72, .06), 0 0 26px rgba(255, 185, 56, .32);
  animation: orgwBramShopCircleGlow 2.2s ease-in-out infinite;
  pointer-events: none;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  content: 'SUPPLY SHOP';
  position: absolute;
  left: 50%;
  top: -8px;
  transform: translate(-50%, -100%);
  padding: 5px 12px;
  border: 1px solid rgba(109, 62, 17, .72);
  border-radius: 999px;
  background: rgba(255, 239, 194, .95);
  color: #633812;
  font-size: clamp(11px, .72vw, 16px);
  font-weight: 900;
  letter-spacing: .06em;
  white-space: nowrap;
  box-shadow: 0 6px 14px rgba(32, 15, 3, .28);
  pointer-events: none;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office:hover::before,
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office:focus-visible::before {
  box-shadow: 0 0 0 10px rgba(255, 194, 72, .08), 0 0 34px rgba(255, 185, 56, .42);
  background: radial-gradient(circle at 50% 52%, rgba(255, 224, 120, .24) 0%, rgba(255, 190, 71, .17) 45%, rgba(255, 183, 65, 0) 74%);
}
@keyframes orgwBramShopCircleGlow {
  0%, 100% { transform: scale(1); opacity: .85; }
  50% { transform: scale(1.03); opacity: 1; }
}

[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 58.5% !important;
  top: 49.3% !important;
  width: 4.35% !important;
  height: 13.1% !important;
  z-index: 31 !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram img {
  object-fit: contain !important;
  object-position: center bottom !important;
}

.orgw-bram-shop-panel {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  background: #120804 !important;
  overflow: hidden !important;
}
.orgw-bram-shop-scene,
.orgw-bram-shop-scene-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.orgw-bram-shop-scene-image {
  display: block;
  object-fit: cover;
  object-position: center center;
}
.orgw-bram-shop-scene-fallback {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #281409, #140802);
}
.orgw-bram-shop-scene-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20,10,4,.28) 0%, rgba(20,10,4,.05) 24%, rgba(20,10,4,0) 50%, rgba(11,5,2,.18) 64%, rgba(11,5,2,.40) 100%);
}
.orgw-bram-shop-header {
  position: absolute !important;
  z-index: 5 !important;
  left: max(24px, env(safe-area-inset-left));
  right: max(24px, env(safe-area-inset-right));
  top: max(18px, env(safe-area-inset-top));
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 20px !important;
  pointer-events: none;
}
.orgw-bram-shop-title {
  max-width: min(680px, 56vw);
  padding: 14px 18px 14px;
  border-radius: 18px;
  border: 1px solid rgba(255, 218, 146, .34);
  background: linear-gradient(180deg, rgba(43, 20, 6, .86), rgba(29, 13, 4, .70));
  color: #fff0cb;
  box-shadow: 0 12px 24px rgba(0,0,0,.24);
  backdrop-filter: blur(4px);
  pointer-events: auto;
}
.orgw-bram-shop-title > span { color:#f0c46f !important; }
.orgw-bram-shop-title h2 { color:#fff3d7 !important; }
.orgw-bram-shop-title p { color:#f2dfbb !important; }
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  pointer-events: auto;
}
.orgw-bram-shop-carousel {
  position: absolute !important;
  z-index: 6 !important;
  left: max(28px, env(safe-area-inset-left));
  right: max(28px, env(safe-area-inset-right));
  bottom: max(26px, calc(env(safe-area-inset-bottom) + 18px));
  display: grid !important;
  grid-template-columns: 54px minmax(0,1fr) 54px !important;
  align-items: stretch !important;
  gap: 14px !important;
  min-height: min(29vh, 280px) !important;
  padding: 16px 14px !important;
  border-radius: 28px !important;
  border: 1px solid rgba(255, 214, 140, .34) !important;
  background: linear-gradient(180deg, rgba(38, 17, 6, .18) 0%, rgba(64, 30, 12, .26) 18%, rgba(77, 35, 12, .28) 100%) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 229, 176, .12), 0 14px 40px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(1.5px);
}
.orgw-bram-shop-cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 16px !important;
  min-width: 0 !important;
}
.orgw-bram-shop-card {
  display: grid !important;
  grid-template-rows: auto auto 7px auto !important;
  gap: 8px !important;
  align-content: start !important;
  min-height: 210px !important;
  padding: 12px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(169, 113, 47, .44) !important;
  background: linear-gradient(180deg, rgba(255,247,226,.98), rgba(239,220,181,.97)) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.16) !important;
}
.orgw-bram-shop-card-top { align-items: start !important; }
.orgw-bram-shop-card-icon {
  height: 88px !important;
  background: rgba(255,255,255,.58) !important;
}
.orgw-bram-shop-card-icon img {
  width: 84% !important;
  height: 84% !important;
}
.orgw-bram-shop-card-copy strong { font-size: clamp(15px, .96vw, 20px) !important; }
.orgw-bram-shop-card-copy span { font-size: clamp(11px, .72vw, 15px) !important; }
.orgw-bram-shop-card-meta { font-size: clamp(10px, .62vw, 13px) !important; }
.orgw-bram-shop-progress { margin-top: 2px !important; }
.orgw-bram-shop-footer {
  position: absolute !important;
  z-index: 7 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  bottom: max(4px, env(safe-area-inset-bottom)) !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  white-space: nowrap !important;
}
.orgw-bram-shop-footer p {
  color: #f5e2b3 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,.48) !important;
}
@media (max-width: 980px), (max-height: 620px) {
  [data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
    left: 44.8% !important;
    top: 51.9% !important;
    width: 16.1% !important;
    height: 25.0% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
    left: 57.8% !important;
    top: 48.6% !important;
    width: 4.8% !important;
    height: 14.2% !important;
  }
  .orgw-bram-shop-header {
    left: 14px !important;
    right: 14px !important;
    top: 10px !important;
  }
  .orgw-bram-shop-title { max-width: 58vw !important; padding: 10px 12px !important; }
  .orgw-bram-shop-title h2 { font-size: 28px !important; }
  .orgw-bram-shop-title p { font-size: 12px !important; }
  [data-org-world] button.orgw-bram-shop-exit {
    min-width: 144px !important;
    min-height: 48px !important;
    font-size: 15px !important;
  }
  .orgw-bram-shop-carousel {
    left: 10px !important;
    right: 10px !important;
    bottom: 22px !important;
    grid-template-columns: 44px minmax(0,1fr) 44px !important;
    gap: 8px !important;
    min-height: min(31vh, 248px) !important;
    padding: 10px 8px !important;
    border-radius: 22px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 44px !important;
    min-width: 44px !important;
    font-size: 30px !important;
  }
  .orgw-bram-shop-cards { gap: 8px !important; }
  .orgw-bram-shop-card {
    min-height: 172px !important;
    padding: 8px !important;
    gap: 6px !important;
  }
  .orgw-bram-shop-card-top { grid-template-columns: 1fr !important; gap: 5px !important; }
  .orgw-bram-shop-card-icon { height: 56px !important; }
  .orgw-bram-shop-card-copy strong { font-size: 13px !important; }
  .orgw-bram-shop-card-copy span,
  .orgw-bram-shop-card-meta { font-size: 10px !important; }
  [data-org-world] button.orgw-bram-shop-card-action { min-height: 34px !important; font-size: 12px !important; }
  .orgw-bram-shop-footer p { display: none !important; }
}

/* ========================================================================
   ORG World 0.1.79 — approved Bram shop mockup implementation
   ======================================================================== */
/* Bram stands independently on the open paved area, smaller than before. */
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 48.4% !important;
  top: 48.8% !important;
  width: 3.75% !important;
  height: 11.55% !important;
  z-index: 31 !important;
}

/* Keep the interaction on the small quay stall with a soft circular glow. */
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 45.0% !important;
  top: 52.0% !important;
  width: 15.2% !important;
  height: 23.8% !important;
  z-index: 27 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '' !important;
  position: absolute !important;
  left: 5% !important;
  top: 6% !important;
  width: 90% !important;
  height: 84% !important;
  border-radius: 50% !important;
  border: 2px solid rgba(255, 226, 143, .34) !important;
  background: radial-gradient(ellipse at center, rgba(255, 216, 102, .18) 0%, rgba(255, 188, 56, .10) 46%, rgba(255, 188, 56, 0) 75%) !important;
  box-shadow: 0 0 24px rgba(255, 188, 56, .28) !important;
  animation: orgwBramShopApprovedGlow 2.35s ease-in-out infinite !important;
  pointer-events: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  content: 'SUPPLY SHOP' !important;
  position: absolute !important;
  left: 50% !important;
  top: 1% !important;
  transform: translate(-50%, -100%) !important;
  padding: 5px 12px !important;
  border: 1px solid rgba(109, 62, 17, .72) !important;
  border-radius: 999px !important;
  background: rgba(255, 239, 194, .95) !important;
  color: #633812 !important;
  font-size: clamp(11px, .72vw, 16px) !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  white-space: nowrap !important;
  box-shadow: 0 6px 14px rgba(32, 15, 3, .28) !important;
  pointer-events: none !important;
}
@keyframes orgwBramShopApprovedGlow {
  0%, 100% { transform: scale(1); opacity: .78; }
  50% { transform: scale(1.035); opacity: 1; }
}

/* Full-screen approved interior layout. */
.orgw-modal.is-bram-shop,
.orgw-modal.is-bram-shop .orgw-modal-card,
.orgw-modal.is-bram-shop [data-modal-content],
.orgw-bram-shop-panel {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}
.orgw-modal.is-bram-shop {
  inset: 0 !important;
  place-items: stretch !important;
  background: #100703 !important;
}
.orgw-modal.is-bram-shop .orgw-modal-backdrop,
.orgw-modal.is-bram-shop .orgw-modal-card > .orgw-modal-close {
  display: none !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card,
.orgw-modal.is-bram-shop [data-modal-content],
.orgw-bram-shop-panel {
  position: absolute !important;
  inset: 0 !important;
}
.orgw-bram-shop-panel {
  color: #fff1d0 !important;
  background: #160b05 !important;
}
.orgw-bram-shop-scene,
.orgw-bram-shop-scene-image,
.orgw-bram-shop-scene-fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.orgw-bram-shop-scene-image {
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.orgw-bram-shop-scene-shade {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg, rgba(20, 9, 3, .15) 0%, rgba(20, 9, 3, 0) 32%, rgba(15, 6, 2, .02) 54%, rgba(15, 6, 2, .26) 100%),
    linear-gradient(90deg, rgba(8, 3, 1, .13), transparent 17%, transparent 83%, rgba(8, 3, 1, .11)) !important;
  pointer-events: none !important;
}

/* Title panel and exit button match the approved preview. */
.orgw-bram-shop-header {
  position: absolute !important;
  z-index: 8 !important;
  left: max(22px, env(safe-area-inset-left)) !important;
  right: max(22px, env(safe-area-inset-right)) !important;
  top: max(18px, env(safe-area-inset-top)) !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  pointer-events: none !important;
}
.orgw-bram-shop-title {
  width: min(560px, 31vw) !important;
  max-width: 31vw !important;
  padding: 15px 22px 17px !important;
  border: 2px solid rgba(213, 161, 84, .55) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, rgba(42, 22, 10, .94), rgba(29, 14, 5, .90)) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 237, 192, .10) !important;
  backdrop-filter: blur(3px) !important;
  pointer-events: auto !important;
}
.orgw-bram-shop-title > span {
  display: block !important;
  margin-bottom: 4px !important;
  color: #f0c574 !important;
  font-size: clamp(12px, .76vw, 17px) !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}
.orgw-bram-shop-title h2 {
  margin: 0 0 7px !important;
  color: #fff2d1 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(30px, 2.15vw, 46px) !important;
  line-height: 1 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.34) !important;
}
.orgw-bram-shop-title p {
  margin: 0 !important;
  color: #f6e5c2 !important;
  font-size: clamp(13px, .82vw, 17px) !important;
  line-height: 1.35 !important;
}
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  pointer-events: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 11px !important;
  min-width: 220px !important;
  min-height: 64px !important;
  padding: 12px 24px !important;
  border: 2px solid rgba(255, 225, 157, .72) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, #ca792d 0%, #8e4216 100%) !important;
  color: #fff4d9 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.22) !important;
  font-size: clamp(17px, 1vw, 22px) !important;
  font-weight: 900 !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus-visible {
  background: linear-gradient(180deg, #df8b3b 0%, #a14b19 100%) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.40), 0 0 0 3px rgba(255,214,125,.20) !important;
}
.orgw-bram-shop-exit span {
  font-size: 27px !important;
  line-height: 1 !important;
}

/* Four cards are integrated into the lower wooden floor, not placed in a popup bar. */
.orgw-bram-shop-carousel {
  position: absolute !important;
  z-index: 7 !important;
  left: 7.0% !important;
  right: 7.0% !important;
  top: 54.0% !important;
  bottom: 5.4% !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) 72px !important;
  align-items: stretch !important;
  gap: 16px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  overflow: visible !important;
}
.orgw-bram-shop-cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
}
[data-org-world] button.orgw-bram-shop-nav,
[data-org-world] button.orgw-bram-shop-nav:hover,
[data-org-world] button.orgw-bram-shop-nav:focus,
[data-org-world] button.orgw-bram-shop-nav:active {
  align-self: center !important;
  width: 66px !important;
  min-width: 66px !important;
  height: 66px !important;
  min-height: 66px !important;
  padding: 0 !important;
  border: 2px solid rgba(255, 224, 148, .70) !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, rgba(226, 155, 52, .98), rgba(139, 72, 18, .98)) !important;
  color: #fff0c6 !important;
  font-size: 45px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.30), inset 0 1px rgba(255,255,255,.28) !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-nav:disabled {
  opacity: .34 !important;
}
.orgw-bram-shop-card {
  display: grid !important;
  grid-template-rows: auto minmax(64px, 1fr) auto auto 7px auto auto !important;
  align-items: center !important;
  justify-items: stretch !important;
  gap: 5px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 11px 13px 12px !important;
  border: 2px solid rgba(132, 83, 31, .58) !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(255, 248, 227, .98) 0%, rgba(235, 213, 170, .98) 100%) !important;
  color: #4b2b10 !important;
  box-shadow: 0 14px 26px rgba(0,0,0,.22), inset 0 0 0 2px rgba(255,255,255,.28) !important;
  overflow: hidden !important;
}
.orgw-bram-shop-card.is-ready {
  border-color: rgba(121, 188, 72, .92) !important;
  box-shadow: 0 0 0 3px rgba(122, 194, 75, .22), 0 14px 26px rgba(0,0,0,.22) !important;
}
.orgw-bram-shop-card-title {
  display: block !important;
  min-height: 1.15em !important;
  color: #4b2b10 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(17px, 1.12vw, 24px) !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  text-align: center !important;
}
.orgw-bram-shop-card-icon {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 64px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
}
.orgw-bram-shop-card-icon img {
  display: block !important;
  width: 88% !important;
  height: 88% !important;
  max-width: 150px !important;
  max-height: 150px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 4px 3px rgba(66, 37, 12, .18)) !important;
}
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-card-count {
  display: block !important;
  color: #513016 !important;
  text-align: center !important;
  line-height: 1.05 !important;
}
.orgw-bram-shop-card-reward {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(14px, .88vw, 19px) !important;
  font-weight: 700 !important;
}
.orgw-bram-shop-card-requirement {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(13px, .82vw, 18px) !important;
}
.orgw-bram-shop-card-count {
  font-size: clamp(11px, .70vw, 15px) !important;
  font-weight: 800 !important;
}
.orgw-bram-shop-progress {
  width: 100% !important;
  height: 7px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: rgba(91, 55, 19, .18) !important;
  box-shadow: inset 0 1px 2px rgba(61,35,10,.18) !important;
  overflow: hidden !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #d99b2d 0%, #72ae45 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  width: 100% !important;
  min-height: 42px !important;
  padding: 7px 9px !important;
  border: 2px solid rgba(78, 53, 17, .58) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #667d24 0%, #344b12 100%) !important;
  color: #fff0c6 !important;
  box-shadow: inset 0 1px rgba(255,255,255,.18), 0 4px 8px rgba(0,0,0,.14) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(14px, .84vw, 18px) !important;
  font-weight: 900 !important;
  transform: none !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #bd7a2b 0%, #714015 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #b7a487 0%, #857052 100%) !important;
  color: #f9edcf !important;
}
.orgw-bram-shop-footer {
  position: absolute !important;
  z-index: 9 !important;
  left: 50% !important;
  bottom: max(1.2%, env(safe-area-inset-bottom)) !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: auto !important;
  white-space: nowrap !important;
}
.orgw-bram-shop-dots {
  display: flex !important;
  gap: 10px !important;
}
[data-org-world] button.orgw-bram-shop-dot,
[data-org-world] button.orgw-bram-shop-dot:hover,
[data-org-world] button.orgw-bram-shop-dot:focus,
[data-org-world] button.orgw-bram-shop-dot:active {
  width: 14px !important;
  min-width: 14px !important;
  height: 14px !important;
  min-height: 14px !important;
  padding: 0 !important;
  border: 2px solid rgba(72, 43, 13, .72) !important;
  border-radius: 50% !important;
  background: rgba(89, 61, 30, .72) !important;
  box-shadow: 0 2px 5px rgba(0,0,0,.24) !important;
}
[data-org-world] button.orgw-bram-shop-dot.is-active {
  background: #f2b744 !important;
  border-color: #6a431b !important;
  box-shadow: 0 0 10px rgba(242,183,68,.70) !important;
}
.orgw-bram-shop-footer p {
  display: none !important;
}

@media (max-width: 1100px), (max-height: 700px) {
  [data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
    left: 48.1% !important;
    top: 48.4% !important;
    width: 4.0% !important;
    height: 12.1% !important;
  }
  .orgw-bram-shop-header {
    left: 12px !important;
    right: 12px !important;
    top: 8px !important;
  }
  .orgw-bram-shop-title {
    width: 34vw !important;
    max-width: 34vw !important;
    padding: 9px 13px 10px !important;
    border-radius: 16px !important;
  }
  .orgw-bram-shop-title > span { font-size: 10px !important; }
  .orgw-bram-shop-title h2 { margin-bottom: 4px !important; font-size: 25px !important; }
  .orgw-bram-shop-title p { font-size: 11px !important; line-height: 1.22 !important; }
  [data-org-world] button.orgw-bram-shop-exit {
    min-width: 142px !important;
    min-height: 46px !important;
    padding: 8px 13px !important;
    border-radius: 16px !important;
    font-size: 14px !important;
  }
  .orgw-bram-shop-exit span { font-size: 21px !important; }
  .orgw-bram-shop-carousel {
    left: 5.2% !important;
    right: 5.2% !important;
    top: 53.5% !important;
    bottom: 5.0% !important;
    grid-template-columns: 48px minmax(0, 1fr) 48px !important;
    gap: 8px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    font-size: 31px !important;
  }
  .orgw-bram-shop-cards { gap: 8px !important; }
  .orgw-bram-shop-card {
    grid-template-rows: auto minmax(44px, 1fr) auto auto 5px auto auto !important;
    gap: 3px !important;
    padding: 7px 8px 8px !important;
    border-radius: 14px !important;
  }
  .orgw-bram-shop-card-title { font-size: 13px !important; }
  .orgw-bram-shop-card-icon { min-height: 44px !important; }
  .orgw-bram-shop-card-icon img { max-width: 84px !important; max-height: 84px !important; }
  .orgw-bram-shop-card-reward { font-size: 11px !important; }
  .orgw-bram-shop-card-requirement { font-size: 10px !important; }
  .orgw-bram-shop-card-count { font-size: 9px !important; }
  .orgw-bram-shop-progress { height: 5px !important; }
  [data-org-world] button.orgw-bram-shop-card-action { min-height: 31px !important; font-size: 11px !important; padding: 4px 6px !important; }
  .orgw-bram-shop-footer { bottom: 1.0% !important; }
  [data-org-world] button.orgw-bram-shop-dot { width: 10px !important; min-width: 10px !important; height: 10px !important; min-height: 10px !important; }
}

/* ========================================================================
   ORG World 0.1.80 — uploaded wooden/parchment swipe card frame
   ======================================================================== */
.orgw-bram-shop-carousel {
  left: 6.4% !important;
  right: 6.4% !important;
  top: 49.2% !important;
  bottom: 2.7% !important;
  grid-template-columns: 64px minmax(0, 1fr) 64px !important;
  gap: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.orgw-bram-shop-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 15px !important;
  align-items: stretch !important;
}
.orgw-bram-shop-card {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 100% 100% !important;
  box-shadow: none !important;
  overflow: visible !important;
  color: #4b2b10 !important;
  filter: drop-shadow(0 10px 12px rgba(0,0,0,.24)) !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 8px rgba(128, 206, 73, .72)) drop-shadow(0 10px 12px rgba(0,0,0,.24)) !important;
}
.orgw-bram-shop-card.is-soldout {
  opacity: .72 !important;
  filter: grayscale(.18) drop-shadow(0 8px 10px rgba(0,0,0,.20)) !important;
}
.orgw-bram-shop-card-title,
.orgw-bram-shop-card-icon,
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-progress,
.orgw-bram-shop-card-count,
[data-org-world] button.orgw-bram-shop-card-action {
  position: absolute !important;
  z-index: 2 !important;
  margin: 0 !important;
}
.orgw-bram-shop-card-title {
  left: 13% !important;
  right: 13% !important;
  top: 6.4% !important;
  min-height: 0 !important;
  color: #4d2d12 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(17px, 1.08vw, 24px) !important;
  font-weight: 800 !important;
  line-height: 1.02 !important;
  text-align: center !important;
  text-shadow: 0 1px rgba(255,255,255,.55) !important;
}
.orgw-bram-shop-card-icon {
  left: 15% !important;
  right: 15% !important;
  top: 15.4% !important;
  height: 39.5% !important;
  min-height: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.orgw-bram-shop-card-icon img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  filter: drop-shadow(0 5px 4px rgba(66,37,12,.24)) !important;
}
.orgw-bram-shop-card-reward {
  left: 13% !important;
  right: 13% !important;
  top: 57.2% !important;
  color: #4e2d12 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, .92vw, 20px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
}
.orgw-bram-shop-card-requirement {
  left: 13% !important;
  right: 13% !important;
  top: 63.3% !important;
  color: #513016 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(13px, .80vw, 18px) !important;
  line-height: 1 !important;
  text-align: center !important;
}
.orgw-bram-shop-progress {
  left: 22% !important;
  right: 22% !important;
  top: 69.4% !important;
  width: auto !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: rgba(83, 50, 16, .20) !important;
  box-shadow: inset 0 1px 2px rgba(55,31,8,.24) !important;
  overflow: hidden !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #e0a32e 0%, #6fae3e 100%) !important;
}
.orgw-bram-shop-card-count {
  left: 13% !important;
  right: 13% !important;
  top: 72.5% !important;
  color: #513016 !important;
  font-size: clamp(11px, .68vw, 15px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  left: 15.8% !important;
  right: 15.8% !important;
  bottom: 8.2% !important;
  width: auto !important;
  height: 10.4% !important;
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 6px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff2c9 !important;
  box-shadow: none !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(14px, .86vw, 19px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 2px 2px rgba(20,10,2,.72) !important;
  transform: none !important;
  cursor: pointer !important;
}
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus-visible {
  color: #fffbdc !important;
  text-shadow: 0 0 8px rgba(255,225,129,.82), 0 2px 2px rgba(20,10,2,.72) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  color: #fff4c8 !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  color: #e4d6af !important;
  opacity: .86 !important;
}
.orgw-bram-shop-card-action-icon {
  display: inline-grid !important;
  place-items: center !important;
  width: 1.35em !important;
  height: 1.05em !important;
  border-radius: 4px !important;
  background: rgba(245,237,184,.92) !important;
  color: #53641d !important;
  font-size: .72em !important;
  line-height: 1 !important;
  text-shadow: none !important;
}

@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-carousel {
    left: 4.7% !important;
    right: 4.7% !important;
    top: 48.7% !important;
    bottom: 1.8% !important;
    grid-template-columns: 48px minmax(0, 1fr) 48px !important;
    gap: 7px !important;
  }
  .orgw-bram-shop-cards { gap: 7px !important; }
  .orgw-bram-shop-card-title { top: 6.2% !important; font-size: 13px !important; }
  .orgw-bram-shop-card-icon { top: 15.1% !important; height: 39.8% !important; }
  .orgw-bram-shop-card-reward { top: 57.0% !important; font-size: 11px !important; }
  .orgw-bram-shop-card-requirement { top: 63.0% !important; font-size: 10px !important; }
  .orgw-bram-shop-progress { top: 69.2% !important; height: 5px !important; }
  .orgw-bram-shop-card-count { top: 72.2% !important; font-size: 9px !important; }
  [data-org-world] button.orgw-bram-shop-card-action {
    bottom: 8.0% !important;
    height: 10.5% !important;
    font-size: 11px !important;
    gap: 5px !important;
  }
  .orgw-bram-shop-card-action-icon { border-radius: 3px !important; }
}

/* ========================================================================
   ORG World 0.1.81 — Ironport NPC positions, quay glow and centered shop art
   ======================================================================== */
/* Three smaller NPCs placed in the user's marked open paving areas. */
[data-org-world].is-area-ironport .orgw-ironport-character {
  width: 3.45% !important;
  height: 10.6% !important;
  z-index: 31 !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
  left: 16.9% !important;
  top: 58.5% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 37.1% !important;
  top: 29.2% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
  left: 69.4% !important;
  top: 45.5% !important;
  width: 3.45% !important;
  height: 10.6% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

/* The interaction ring now follows the actual quay shop, far away from Bram. */
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 52.4% !important;
  top: 57.1% !important;
  width: 16.2% !important;
  height: 26.0% !important;
  z-index: 27 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '' !important;
  position: absolute !important;
  left: 8% !important;
  top: 8% !important;
  width: 84% !important;
  height: 84% !important;
  border-radius: 50% !important;
  border: 2px solid rgba(255, 226, 143, .34) !important;
  background: radial-gradient(ellipse at center, rgba(255, 216, 102, .18) 0%, rgba(255, 188, 56, .10) 48%, rgba(255, 188, 56, 0) 76%) !important;
  box-shadow: 0 0 24px rgba(255, 188, 56, .28) !important;
  animation: orgwBramShopV181Glow 2.35s ease-in-out infinite !important;
  pointer-events: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  left: 50% !important;
  top: 3% !important;
  transform: translate(-50%, -100%) !important;
}
@keyframes orgwBramShopV181Glow {
  0%, 100% { transform: scale(1); opacity: .76; }
  50% { transform: scale(1.025); opacity: 1; }
}

/* Slightly smaller product art, centered in the parchment's main visual area. */
.orgw-bram-shop-card-icon {
  left: 22% !important;
  right: 22% !important;
  top: 19.4% !important;
  height: 31.5% !important;
  display: grid !important;
  place-items: center !important;
}
.orgw-bram-shop-card-icon img {
  width: 88% !important;
  height: 88% !important;
  max-width: 88% !important;
  max-height: 88% !important;
  object-fit: contain !important;
  object-position: center !important;
}
.orgw-bram-shop-card-reward {
  top: 54.8% !important;
}
.orgw-bram-shop-card-requirement {
  top: 61.0% !important;
}
.orgw-bram-shop-progress {
  top: 67.4% !important;
}
.orgw-bram-shop-card-count {
  top: 70.7% !important;
}

@media (max-width: 1100px), (max-height: 700px) {
  [data-org-world].is-area-ironport .orgw-ironport-character {
    width: 3.65% !important;
    height: 11.1% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
    left: 16.8% !important;
    top: 58.2% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
    left: 37.0% !important;
    top: 28.9% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
    left: 69.3% !important;
    top: 45.2% !important;
    width: 3.65% !important;
    height: 11.1% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
    left: 52.2% !important;
    top: 56.8% !important;
    width: 16.7% !important;
    height: 26.7% !important;
  }
  .orgw-bram-shop-card-icon {
    left: 23% !important;
    right: 23% !important;
    top: 19.6% !important;
    height: 31.0% !important;
  }
  .orgw-bram-shop-card-icon img {
    width: 86% !important;
    height: 86% !important;
    max-width: 86% !important;
    max-height: 86% !important;
  }
  .orgw-bram-shop-card-reward { top: 54.6% !important; }
  .orgw-bram-shop-card-requirement { top: 60.8% !important; }
  .orgw-bram-shop-progress { top: 67.1% !important; }
  .orgw-bram-shop-card-count { top: 70.5% !important; }
}


/* ========================================================================
   ORG World 0.1.82 — smaller offer templates, exact NPC spots, stronger glow
   ======================================================================== */
[data-org-world].is-area-ironport .orgw-ironport-character {
  width: 3.15% !important;
  height: 9.8% !important;
  z-index: 31 !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
  left: 12.8% !important;
  top: 56.0% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 39.4% !important;
  top: 24.2% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
  left: 74.1% !important;
  top: 40.6% !important;
}

[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 52.1% !important;
  top: 56.3% !important;
  width: 17.4% !important;
  height: 28.2% !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 50% 50%, rgba(255,219,118,.10) 0%, rgba(255,181,42,0) 70%) !important;
  box-shadow: 0 0 28px rgba(255, 189, 61, .22), 0 0 64px rgba(255, 181, 42, .18) !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  border: 3px solid rgba(255, 226, 140, .44) !important;
  background: radial-gradient(circle at center, rgba(255, 225, 119, .34) 0%, rgba(255, 190, 60, .18) 42%, rgba(255, 190, 60, 0) 76%) !important;
  box-shadow: 0 0 0 3px rgba(255,227,151,.18), 0 0 34px rgba(255, 188, 56, .48), 0 0 80px rgba(255, 188, 56, .28) !important;
  animation: orgwBramShopV182Glow 1.55s ease-in-out infinite !important;
  pointer-events: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  top: -2% !important;
  padding: 7px 16px !important;
  font-size: clamp(12px, .82vw, 18px) !important;
  box-shadow: 0 6px 16px rgba(32,15,3,.34), 0 0 16px rgba(255, 194, 77, .20) !important;
}
@keyframes orgwBramShopV182Glow {
  0%, 100% { transform: scale(1); opacity: .82; }
  50% { transform: scale(1.06); opacity: 1; }
}

.orgw-bram-shop-header {
  left: max(18px, env(safe-area-inset-left)) !important;
  right: max(18px, env(safe-area-inset-right)) !important;
  top: max(14px, env(safe-area-inset-top)) !important;
}
.orgw-bram-shop-title {
  width: min(640px, 36vw) !important;
  max-width: 36vw !important;
  padding: 18px 24px 20px !important;
  border-radius: 24px !important;
}
.orgw-bram-shop-title > span {
  font-size: clamp(13px, .84vw, 19px) !important;
}
.orgw-bram-shop-title h2 {
  margin: 0 0 8px !important;
  font-size: clamp(34px, 2.45vw, 52px) !important;
}
.orgw-bram-shop-title p {
  font-size: clamp(16px, 1vw, 21px) !important;
  line-height: 1.34 !important;
}
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  min-width: 246px !important;
  min-height: 72px !important;
  padding: 14px 28px !important;
  border-radius: 26px !important;
  font-size: clamp(20px, 1.22vw, 28px) !important;
  gap: 12px !important;
}
.orgw-bram-shop-exit span {
  font-size: 31px !important;
}

.orgw-bram-shop-carousel {
  left: 7.6% !important;
  right: 7.6% !important;
  top: 55.4% !important;
  bottom: 7.2% !important;
  grid-template-columns: 58px minmax(0, 1fr) 58px !important;
  gap: 10px !important;
}
.orgw-bram-shop-cards {
  gap: 8px !important;
  align-items: start !important;
}
.orgw-bram-shop-card {
  width: 72% !important;
  height: 72% !important;
  justify-self: center !important;
  align-self: start !important;
  filter: drop-shadow(0 9px 11px rgba(0,0,0,.22)) !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 8px rgba(128, 206, 73, .72)) drop-shadow(0 9px 11px rgba(0,0,0,.22)) !important;
}
.orgw-bram-shop-card-title {
  left: 14% !important;
  right: 14% !important;
  top: 7.2% !important;
  font-size: clamp(14px, .92vw, 20px) !important;
  line-height: 1.04 !important;
}
.orgw-bram-shop-card-icon {
  left: 23% !important;
  right: 23% !important;
  top: 17.6% !important;
  height: 25.6% !important;
}
.orgw-bram-shop-card-icon img {
  width: 76% !important;
  height: 76% !important;
  max-width: 76% !important;
  max-height: 76% !important;
}
.orgw-bram-shop-card-reward {
  left: 13% !important;
  right: 13% !important;
  top: 48.6% !important;
  font-size: clamp(12px, .78vw, 17px) !important;
}
.orgw-bram-shop-card-requirement {
  left: 13% !important;
  right: 13% !important;
  top: 56.2% !important;
  font-size: clamp(11px, .72vw, 15px) !important;
}
.orgw-bram-shop-progress {
  left: 22% !important;
  right: 22% !important;
  top: 64.0% !important;
  height: 6px !important;
}
.orgw-bram-shop-card-count {
  left: 13% !important;
  right: 13% !important;
  top: 67.4% !important;
  font-size: clamp(10px, .64vw, 13px) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  left: 16.0% !important;
  right: 16.0% !important;
  bottom: 8.8% !important;
  height: 9.2% !important;
  font-size: clamp(12px, .76vw, 16px) !important;
  gap: 6px !important;
}
.orgw-bram-shop-card-action-icon {
  width: 1.2em !important;
}

@media (max-width: 1100px), (max-height: 700px) {
  [data-org-world].is-area-ironport .orgw-ironport-character {
    width: 3.28% !important;
    height: 10.2% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
    left: 12.7% !important;
    top: 55.8% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
    left: 39.2% !important;
    top: 24.0% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
    left: 74.0% !important;
    top: 40.3% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
    left: 51.9% !important;
    top: 56.0% !important;
    width: 17.8% !important;
    height: 28.8% !important;
  }
  .orgw-bram-shop-title {
    width: 40vw !important;
    max-width: 40vw !important;
    padding: 12px 16px 14px !important;
  }
  .orgw-bram-shop-title > span { font-size: 11px !important; }
  .orgw-bram-shop-title h2 { font-size: 28px !important; margin-bottom: 5px !important; }
  .orgw-bram-shop-title p { font-size: 12px !important; }
  [data-org-world] button.orgw-bram-shop-exit { min-width: 168px !important; min-height: 52px !important; padding: 10px 16px !important; border-radius: 18px !important; font-size: 15px !important; }
  .orgw-bram-shop-exit span { font-size: 22px !important; }
  .orgw-bram-shop-carousel {
    left: 5.8% !important;
    right: 5.8% !important;
    top: 54.5% !important;
    bottom: 5.2% !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    gap: 6px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    font-size: 28px !important;
  }
  .orgw-bram-shop-cards { gap: 5px !important; }
  .orgw-bram-shop-card { width: 74% !important; height: 74% !important; }
  .orgw-bram-shop-card-title { font-size: 11px !important; top: 7.0% !important; }
  .orgw-bram-shop-card-icon { top: 17.4% !important; height: 25.4% !important; }
  .orgw-bram-shop-card-icon img { width: 74% !important; height: 74% !important; max-width: 74% !important; max-height: 74% !important; }
  .orgw-bram-shop-card-reward { top: 48.2% !important; font-size: 10px !important; }
  .orgw-bram-shop-card-requirement { top: 55.8% !important; font-size: 9px !important; }
  .orgw-bram-shop-progress { top: 63.6% !important; height: 4px !important; }
  .orgw-bram-shop-card-count { top: 66.8% !important; font-size: 8px !important; }
  [data-org-world] button.orgw-bram-shop-card-action { bottom: 8.6% !important; height: 9.1% !important; font-size: 10px !important; gap: 4px !important; }
}

/* ========================================================================
   ORG World 0.1.83 — exact 50% Bram frames, centered goods, exact NPC circles
   ======================================================================== */
[data-org-world].is-area-ironport .orgw-ironport-character {
  width: 2.85% !important;
  height: 8.9% !important;
  z-index: 31 !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
  left: 10.8% !important;
  top: 47.4% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
  left: 35.6% !important;
  top: 18.3% !important;
}
[data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
  left: 66.8% !important;
  top: 31.8% !important;
}

[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
  left: 52.0% !important;
  top: 56.1% !important;
  width: 18.6% !important;
  height: 30.1% !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 50% 50%, rgba(255,229,128,.16) 0%, rgba(255,189,48,.06) 52%, rgba(255,189,48,0) 76%) !important;
  box-shadow: 0 0 34px rgba(255, 193, 71, .30), 0 0 94px rgba(255, 193, 71, .22) !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: 50% !important;
  border: 3px solid rgba(255, 229, 145, .56) !important;
  background: radial-gradient(circle at center, rgba(255,232,136,.42) 0%, rgba(255,199,76,.20) 44%, rgba(255,199,76,0) 74%) !important;
  box-shadow: 0 0 0 4px rgba(255,235,170,.12), 0 0 44px rgba(255, 201, 83, .66), 0 0 118px rgba(255, 194, 77, .36) !important;
  animation: orgwBramShopV183Glow 1.15s ease-in-out infinite !important;
  pointer-events: none !important;
}
[data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office::after {
  top: -4% !important;
  padding: 8px 18px !important;
  font-size: clamp(13px, .88vw, 19px) !important;
  box-shadow: 0 8px 18px rgba(32,15,3,.40), 0 0 20px rgba(255, 198, 76, .28) !important;
}
@keyframes orgwBramShopV183Glow {
  0%, 100% { transform: scale(1); opacity: .84; }
  50% { transform: scale(1.075); opacity: 1; }
}

.orgw-bram-shop-header {
  left: max(18px, env(safe-area-inset-left)) !important;
  right: max(18px, env(safe-area-inset-right)) !important;
  top: max(14px, env(safe-area-inset-top)) !important;
}
.orgw-bram-shop-title {
  width: min(700px, 39vw) !important;
  max-width: 39vw !important;
  padding: 20px 26px 22px !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.34), 0 0 18px rgba(255,184,68,.12) !important;
}
.orgw-bram-shop-title > span { font-size: clamp(14px, .92vw, 20px) !important; }
.orgw-bram-shop-title h2 { font-size: clamp(36px, 2.65vw, 56px) !important; }
.orgw-bram-shop-title p { font-size: clamp(18px, 1.06vw, 22px) !important; line-height: 1.36 !important; }
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  min-width: 258px !important;
  min-height: 76px !important;
  padding: 15px 30px !important;
  border-radius: 27px !important;
  font-size: clamp(22px, 1.26vw, 30px) !important;
  gap: 12px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.30), 0 0 14px rgba(255,187,73,.14) !important;
}
.orgw-bram-shop-exit span { font-size: 32px !important; }

.orgw-bram-shop-carousel {
  left: 7.0% !important;
  right: 7.0% !important;
  top: 54.9% !important;
  bottom: 6.1% !important;
  grid-template-columns: 54px minmax(0, 1fr) 54px !important;
  gap: 9px !important;
}
.orgw-bram-shop-cards {
  gap: 10px !important;
  align-items: start !important;
}
.orgw-bram-shop-card {
  width: 50% !important;
  height: auto !important;
  aspect-ratio: 1024 / 1536 !important;
  justify-self: center !important;
  align-self: start !important;
  filter: drop-shadow(0 10px 12px rgba(0,0,0,.24)) !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 10px rgba(128, 206, 73, .74)) drop-shadow(0 10px 12px rgba(0,0,0,.24)) !important;
}
.orgw-bram-shop-card-title {
  left: 14% !important;
  right: 14% !important;
  top: 7.2% !important;
  font-size: clamp(11px, .72vw, 15px) !important;
  line-height: 1.06 !important;
}
.orgw-bram-shop-card-icon {
  left: 24.5% !important;
  right: 24.5% !important;
  top: 24.4% !important;
  height: 22.8% !important;
  display: grid !important;
  place-items: center !important;
}
.orgw-bram-shop-card-icon img {
  width: 68% !important;
  height: 68% !important;
  max-width: 68% !important;
  max-height: 68% !important;
  object-fit: contain !important;
  object-position: center !important;
}
.orgw-bram-shop-card-reward {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 56.8% !important;
  font-size: clamp(9px, .58vw, 13px) !important;
}
.orgw-bram-shop-card-requirement {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 63.1% !important;
  font-size: clamp(8px, .54vw, 12px) !important;
}
.orgw-bram-shop-progress {
  left: 22.4% !important;
  right: 22.4% !important;
  top: 69.6% !important;
  height: 4px !important;
}
.orgw-bram-shop-card-count {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 72.9% !important;
  font-size: clamp(7px, .48vw, 10px) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  left: 18.2% !important;
  right: 18.2% !important;
  bottom: 9.0% !important;
  height: 8.9% !important;
  font-size: clamp(9px, .58vw, 12px) !important;
  gap: 4px !important;
}
.orgw-bram-shop-card-action-icon { width: 1.08em !important; }

@media (max-width: 1100px), (max-height: 700px) {
  [data-org-world].is-area-ironport .orgw-ironport-character {
    width: 2.95% !important;
    height: 9.2% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-dori {
    left: 10.6% !important;
    top: 47.1% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-bram {
    left: 35.3% !important;
    top: 18.0% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-character.is-hilda {
    left: 66.5% !important;
    top: 31.4% !important;
  }
  [data-org-world].is-area-ironport .orgw-ironport-prop-button.is-office {
    width: 19.0% !important;
    height: 30.7% !important;
  }
  .orgw-bram-shop-title {
    width: 43vw !important;
    max-width: 43vw !important;
    padding: 14px 18px 16px !important;
  }
  .orgw-bram-shop-title > span { font-size: 11px !important; }
  .orgw-bram-shop-title h2 { font-size: 30px !important; margin-bottom: 5px !important; }
  .orgw-bram-shop-title p { font-size: 13px !important; }
  [data-org-world] button.orgw-bram-shop-exit { min-width: 184px !important; min-height: 56px !important; padding: 10px 18px !important; border-radius: 18px !important; font-size: 16px !important; }
  .orgw-bram-shop-exit span { font-size: 24px !important; }
  .orgw-bram-shop-carousel {
    left: 5.8% !important;
    right: 5.8% !important;
    top: 54.1% !important;
    bottom: 4.9% !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    gap: 6px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    font-size: 28px !important;
  }
  .orgw-bram-shop-cards { gap: 6px !important; }
  .orgw-bram-shop-card { width: 50% !important; }
  .orgw-bram-shop-card-title { font-size: 10px !important; }
  .orgw-bram-shop-card-icon { top: 24.2% !important; height: 22.6% !important; }
  .orgw-bram-shop-card-icon img { width: 66% !important; height: 66% !important; max-width: 66% !important; max-height: 66% !important; }
  .orgw-bram-shop-card-reward { top: 56.6% !important; font-size: 8px !important; }
  .orgw-bram-shop-card-requirement { top: 62.9% !important; font-size: 7px !important; }
  .orgw-bram-shop-progress { top: 69.4% !important; height: 3px !important; }
  .orgw-bram-shop-card-count { top: 72.7% !important; font-size: 7px !important; }
  [data-org-world] button.orgw-bram-shop-card-action { bottom: 8.9% !important; height: 8.8% !important; font-size: 8px !important; gap: 3px !important; }
}


/* ========================================================================
   ORG World 0.1.84 — proportional Bram frames + hard-centered item anchor
   ======================================================================== */
.orgw-bram-shop-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: end !important;
}
.orgw-bram-shop-card {
  width: auto !important;
  height: clamp(248px, 28.5vh, 344px) !important;
  aspect-ratio: 1024 / 1536 !important;
  justify-self: center !important;
  align-self: end !important;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.orgw-bram-shop-card-title {
  left: 14% !important;
  right: 14% !important;
  top: 7.1% !important;
  font-size: clamp(10px, .70vw, 15px) !important;
  line-height: 1.08 !important;
}
.orgw-bram-shop-card-icon {
  left: 50% !important;
  right: auto !important;
  top: 44.0% !important;
  width: 38% !important;
  height: 23% !important;
  transform: translate(-50%, -50%) !important;
  display: grid !important;
  place-items: center !important;
}
.orgw-bram-shop-card-icon img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}
.orgw-bram-shop-card-reward {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 66.5% !important;
  font-size: clamp(9px, .56vw, 13px) !important;
  line-height: 1.06 !important;
}
.orgw-bram-shop-card-requirement {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 72.3% !important;
  font-size: clamp(8px, .50vw, 12px) !important;
}
.orgw-bram-shop-progress {
  left: 22.0% !important;
  right: 22.0% !important;
  top: 78.0% !important;
  height: 4px !important;
}
.orgw-bram-shop-card-count {
  left: 13.5% !important;
  right: 13.5% !important;
  top: 80.8% !important;
  font-size: clamp(7px, .45vw, 10px) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  left: 16.5% !important;
  right: 16.5% !important;
  bottom: 8.0% !important;
  height: 9.0% !important;
  font-size: clamp(8px, .50vw, 12px) !important;
  gap: 4px !important;
}
.orgw-bram-shop-card-action-icon {
  width: 1.05em !important;
}
@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-cards {
    gap: 6px !important;
  }
  .orgw-bram-shop-card {
    height: clamp(214px, 26.2vh, 286px) !important;
  }
  .orgw-bram-shop-card-title {
    font-size: 10px !important;
  }
  .orgw-bram-shop-card-icon {
    top: 44.4% !important;
    width: 38% !important;
    height: 23% !important;
  }
  .orgw-bram-shop-card-reward {
    top: 66.8% !important;
    font-size: 8px !important;
  }
  .orgw-bram-shop-card-requirement {
    top: 72.5% !important;
    font-size: 7px !important;
  }
  .orgw-bram-shop-progress {
    top: 78.2% !important;
    height: 3px !important;
  }
  .orgw-bram-shop-card-count {
    top: 81.0% !important;
    font-size: 7px !important;
  }
  [data-org-world] button.orgw-bram-shop-card-action {
    bottom: 8.1% !important;
    height: 8.9% !important;
    font-size: 8px !important;
    gap: 3px !important;
  }
}

/* ========================================================================
   ORG World 0.1.85 — Bram 75% slide layout without parchment template
   ======================================================================== */
.orgw-bram-shop-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}
.orgw-bram-shop-card {
  position: relative !important;
  display: grid !important;
  grid-template-rows: auto minmax(96px, 1fr) auto auto 6px auto auto !important;
  align-items: center !important;
  justify-items: center !important;
  width: 75% !important;
  max-width: 220px !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  justify-self: center !important;
  align-self: end !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  overflow: visible !important;
  color: #fff0cf !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 8px rgba(135, 219, 83, .34)) !important;
}
.orgw-bram-shop-card.is-soldout {
  opacity: .72 !important;
}
.orgw-bram-shop-card-title,
.orgw-bram-shop-card-icon,
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-progress,
.orgw-bram-shop-card-count,
[data-org-world] button.orgw-bram-shop-card-action {
  position: static !important;
  z-index: auto !important;
  margin: 0 !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
}
.orgw-bram-shop-card-title {
  width: 100% !important;
  min-height: 0 !important;
  color: #fff3d6 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(14px, .90vw, 18px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.58) !important;
}
.orgw-bram-shop-card-icon {
  width: 100% !important;
  min-height: 96px !important;
  display: grid !important;
  place-items: center !important;
  background: transparent !important;
}
.orgw-bram-shop-card-icon img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 72% !important;
  max-height: 128px !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: drop-shadow(0 8px 10px rgba(0,0,0,.34)) !important;
}
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-card-count {
  width: 100% !important;
  color: #fff0cf !important;
  text-align: center !important;
  line-height: 1.08 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.66) !important;
}
.orgw-bram-shop-card-reward {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(11px, .68vw, 14px) !important;
  font-weight: 700 !important;
}
.orgw-bram-shop-card-requirement {
  font-size: clamp(10px, .60vw, 13px) !important;
}
.orgw-bram-shop-card-count {
  font-size: clamp(9px, .54vw, 12px) !important;
  font-weight: 800 !important;
}
.orgw-bram-shop-progress {
  width: 76% !important;
  height: 5px !important;
  border-radius: 999px !important;
  background: rgba(255, 236, 200, .18) !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.34) !important;
  overflow: hidden !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #d99b2d 0%, #72ae45 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  width: 82% !important;
  min-height: 32px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  padding: 6px 10px !important;
  border: 2px solid rgba(255, 230, 165, .44) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, rgba(118, 145, 39, .98), rgba(52, 76, 16, .98)) !important;
  color: #fff4d8 !important;
  box-shadow: 0 6px 14px rgba(0,0,0,.26), inset 0 1px rgba(255,255,255,.16) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(10px, .58vw, 13px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.46) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, rgba(190, 123, 39, .98), rgba(108, 59, 19, .98)) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, rgba(124, 110, 87, .98), rgba(87, 74, 55, .98)) !important;
}
.orgw-bram-shop-card-action-icon {
  width: 1.05em !important;
}
@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-cards {
    gap: 8px !important;
  }
  .orgw-bram-shop-card {
    width: 75% !important;
    max-width: 168px !important;
    grid-template-rows: auto minmax(70px, 1fr) auto auto 4px auto auto !important;
  }
  .orgw-bram-shop-card-title {
    font-size: 11px !important;
  }
  .orgw-bram-shop-card-icon {
    min-height: 70px !important;
  }
  .orgw-bram-shop-card-icon img {
    max-width: 68% !important;
    max-height: 92px !important;
  }
  .orgw-bram-shop-card-reward {
    font-size: 9px !important;
  }
  .orgw-bram-shop-card-requirement,
  .orgw-bram-shop-card-count {
    font-size: 8px !important;
  }
  .orgw-bram-shop-progress {
    width: 74% !important;
    height: 4px !important;
  }
  [data-org-world] button.orgw-bram-shop-card-action {
    width: 84% !important;
    min-height: 26px !important;
    padding: 5px 8px !important;
    font-size: 8px !important;
    gap: 4px !important;
  }
}


/* ========================================================================
   ORG World 0.1.86 — Bram real slide, absolutely no card template/frame
   ======================================================================== */
.orgw-bram-shop-carousel {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.orgw-bram-shop-cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: end !important;
  background: transparent !important;
  background-image: none !important;
}
.orgw-bram-shop-card,
.orgw-bram-shop-card:hover,
.orgw-bram-shop-card:focus,
.orgw-bram-shop-card:active {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 7px !important;
  width: 75% !important;
  max-width: 230px !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 260px !important;
  max-height: 330px !important;
  aspect-ratio: auto !important;
  justify-self: center !important;
  align-self: end !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  background-size: 0 0 !important;
  background-repeat: no-repeat !important;
  box-shadow: none !important;
  filter: none !important;
  overflow: visible !important;
  color: #fff2d4 !important;
}
.orgw-bram-shop-card::before,
.orgw-bram-shop-card::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 11px rgba(129, 224, 77, .46)) !important;
}
.orgw-bram-shop-card.is-soldout {
  opacity: .68 !important;
  filter: grayscale(.20) !important;
}
.orgw-bram-shop-card-title,
.orgw-bram-shop-card-icon,
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-progress,
.orgw-bram-shop-card-count,
[data-org-world] button.orgw-bram-shop-card-action {
  position: static !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: auto !important;
}
.orgw-bram-shop-card-title {
  order: 1 !important;
  width: 100% !important;
  color: #fff3d8 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, .96vw, 20px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.78) !important;
}
.orgw-bram-shop-card-icon {
  order: 2 !important;
  width: 100% !important;
  height: 126px !important;
  min-height: 126px !important;
  display: grid !important;
  place-items: center !important;
  background: transparent !important;
  background-image: none !important;
}
.orgw-bram-shop-card-icon img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 76% !important;
  max-height: 118px !important;
  object-fit: contain !important;
  object-position: center center !important;
  filter: drop-shadow(0 9px 12px rgba(0,0,0,.42)) !important;
}
.orgw-bram-shop-card-reward {
  order: 3 !important;
  width: 100% !important;
  color: #fff1d3 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(12px, .74vw, 16px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.82) !important;
}
.orgw-bram-shop-card-requirement {
  order: 4 !important;
  width: 100% !important;
  color: #f8ddae !important;
  font-size: clamp(11px, .66vw, 14px) !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.82) !important;
}
.orgw-bram-shop-progress {
  order: 5 !important;
  width: 72% !important;
  height: 6px !important;
  min-height: 6px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: rgba(255, 240, 210, .20) !important;
  background-image: none !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.48), 0 1px rgba(255,255,255,.08) !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #dfa231 0%, #6fb742 100%) !important;
}
.orgw-bram-shop-card-count {
  order: 6 !important;
  width: 100% !important;
  color: #f7e5c3 !important;
  font-size: clamp(10px, .58vw, 13px) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.82) !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  order: 7 !important;
  width: 84% !important;
  min-width: 0 !important;
  min-height: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border: 2px solid rgba(255, 230, 164, .52) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #7f9d34 0%, #405c18 100%) !important;
  background-image: linear-gradient(180deg, #7f9d34 0%, #405c18 100%) !important;
  color: #fff5da !important;
  box-shadow: 0 7px 16px rgba(0,0,0,.32), inset 0 1px rgba(255,255,255,.18) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(11px, .66vw, 14px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.56) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #ca8634 0%, #7a4217 100%) !important;
  background-image: linear-gradient(180deg, #ca8634 0%, #7a4217 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #8a7a61 0%, #554a3a 100%) !important;
  background-image: linear-gradient(180deg, #8a7a61 0%, #554a3a 100%) !important;
}
.orgw-bram-shop-card-action-icon {
  width: 1.05em !important;
}
@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-cards {
    gap: 9px !important;
  }
  .orgw-bram-shop-card {
    width: 75% !important;
    max-width: 180px !important;
    min-height: 205px !important;
    max-height: 250px !important;
    gap: 4px !important;
  }
  .orgw-bram-shop-card-title { font-size: 11px !important; }
  .orgw-bram-shop-card-icon { height: 82px !important; min-height: 82px !important; }
  .orgw-bram-shop-card-icon img { max-width: 72% !important; max-height: 78px !important; }
  .orgw-bram-shop-card-reward { font-size: 9px !important; }
  .orgw-bram-shop-card-requirement { font-size: 8px !important; }
  .orgw-bram-shop-progress { width: 72% !important; height: 4px !important; min-height: 4px !important; }
  .orgw-bram-shop-card-count { font-size: 8px !important; }
  [data-org-world] button.orgw-bram-shop-card-action {
    width: 86% !important;
    min-height: 27px !important;
    height: 27px !important;
    padding: 4px 8px !important;
    font-size: 8px !important;
    gap: 4px !important;
  }
}

/* ========================================================================
   ORG World 0.1.87 — keep background-free slide content fully on-screen
   ======================================================================== */
.orgw-bram-shop-carousel {
  left: 5.2% !important;
  right: 5.2% !important;
  top: 52.2% !important;
  bottom: 5.2% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) 52px !important;
  align-items: center !important;
  gap: 12px !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.orgw-bram-shop-cards {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 16px !important;
  overflow: visible !important;
}
.orgw-bram-shop-card,
.orgw-bram-shop-card:hover,
.orgw-bram-shop-card:focus,
.orgw-bram-shop-card:active {
  position: relative !important;
  width: 75% !important;
  max-width: 220px !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  align-self: stretch !important;
  justify-self: center !important;
  display: grid !important;
  grid-template-rows: auto minmax(94px, 1fr) auto auto 6px auto 38px !important;
  align-items: center !important;
  justify-items: center !important;
  gap: 5px !important;
  padding: 4px 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.orgw-bram-shop-card-title,
.orgw-bram-shop-card-icon,
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-progress,
.orgw-bram-shop-card-count,
[data-org-world] button.orgw-bram-shop-card-action {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
}
.orgw-bram-shop-card-title {
  width: 100% !important;
  min-height: 20px !important;
  align-self: start !important;
  color: #fff2d2 !important;
  font-size: clamp(14px, .88vw, 18px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.95), 0 0 5px rgba(0,0,0,.75) !important;
}
.orgw-bram-shop-card-icon {
  width: 100% !important;
  height: 100% !important;
  min-height: 94px !important;
  display: grid !important;
  place-items: center !important;
  overflow: visible !important;
  background: transparent !important;
}
.orgw-bram-shop-card-icon img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 78% !important;
  max-height: 132px !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: drop-shadow(0 8px 9px rgba(0,0,0,.38)) !important;
}
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-card-count {
  width: 100% !important;
  color: #fff0ce !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.95), 0 0 5px rgba(0,0,0,.74) !important;
}
.orgw-bram-shop-card-reward {
  font-size: clamp(11px, .66vw, 14px) !important;
  font-weight: 800 !important;
}
.orgw-bram-shop-card-requirement {
  font-size: clamp(10px, .58vw, 13px) !important;
}
.orgw-bram-shop-progress {
  width: 76% !important;
  height: 6px !important;
  min-height: 6px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: rgba(255,239,204,.23) !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.55), 0 1px rgba(255,255,255,.12) !important;
}
.orgw-bram-shop-card-count {
  font-size: clamp(9px, .53vw, 12px) !important;
  font-weight: 900 !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  width: 86% !important;
  min-width: 0 !important;
  height: 38px !important;
  min-height: 38px !important;
  align-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border: 2px solid rgba(255,230,163,.58) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #819e35 0%, #405c18 100%) !important;
  color: #fff5d8 !important;
  box-shadow: 0 7px 16px rgba(0,0,0,.38), inset 0 1px rgba(255,255,255,.19) !important;
  font-size: clamp(11px, .65vw, 14px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #ca8734 0%, #774015 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #897860 0%, #514635 100%) !important;
}
@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-carousel {
    left: 4.5% !important;
    right: 4.5% !important;
    top: 50.5% !important;
    bottom: 4.0% !important;
    grid-template-columns: 42px minmax(0, 1fr) 42px !important;
    gap: 8px !important;
  }
  .orgw-bram-shop-cards {
    gap: 9px !important;
  }
  .orgw-bram-shop-card {
    width: 75% !important;
    max-width: 175px !important;
    height: 100% !important;
    min-height: 0 !important;
    grid-template-rows: auto minmax(76px, 1fr) auto auto 4px auto 29px !important;
    gap: 3px !important;
    padding: 2px 0 !important;
  }
  .orgw-bram-shop-card-title { font-size: 11px !important; min-height: 14px !important; }
  .orgw-bram-shop-card-icon { min-height: 76px !important; }
  .orgw-bram-shop-card-icon img { max-width: 76% !important; max-height: 96px !important; }
  .orgw-bram-shop-card-reward { font-size: 9px !important; }
  .orgw-bram-shop-card-requirement { font-size: 8px !important; }
  .orgw-bram-shop-progress { width: 74% !important; height: 4px !important; min-height: 4px !important; }
  .orgw-bram-shop-card-count { font-size: 8px !important; }
  [data-org-world] button.orgw-bram-shop-card-action {
    width: 88% !important;
    height: 29px !important;
    min-height: 29px !important;
    padding: 4px 8px !important;
    font-size: 8px !important;
    gap: 4px !important;
  }
}

/* ORG World 0.1.87 — neutralize old two-column/flex-end card geometry */
.orgw-bram-shop-card,
.orgw-bram-shop-card:hover,
.orgw-bram-shop-card:focus,
.orgw-bram-shop-card:active {
  grid-template-columns: minmax(0, 1fr) !important;
  justify-content: stretch !important;
  align-content: stretch !important;
}

/* ========================================================================
   ORG World 0.1.88 — approved full 16:9 Bram shop composition
   Everything remains inside the background image; no parchment item cards.
   ======================================================================== */
.orgw-modal.is-bram-shop {
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  background: #050301 !important;
  overflow: hidden !important;
}
.orgw-modal.is-bram-shop .orgw-modal-backdrop {
  background: #050301 !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card {
  width: min(100vw, 177.7778vh) !important;
  height: min(100vh, 56.25vw) !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  margin: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #120904 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card > .orgw-modal-close {
  display: none !important;
}
.orgw-modal.is-bram-shop [data-modal-content] {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
.orgw-bram-shop-panel {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #120904 !important;
}
.orgw-bram-shop-scene,
.orgw-bram-shop-scene-image,
.orgw-bram-shop-scene-fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
.orgw-bram-shop-scene {
  z-index: 0 !important;
  overflow: hidden !important;
}
.orgw-bram-shop-scene-image {
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.orgw-bram-shop-scene-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(9,4,1,.06) 0%, rgba(9,4,1,0) 42%, rgba(9,4,1,.10) 64%, rgba(9,4,1,.30) 100%),
    radial-gradient(circle at 50% 60%, rgba(255,191,82,.035), rgba(0,0,0,0) 48%) !important;
}
.orgw-bram-shop-header {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  pointer-events: none !important;
}
.orgw-bram-shop-title {
  position: absolute !important;
  left: 1.35% !important;
  top: 2.1% !important;
  width: 25.2% !important;
  max-width: none !important;
  min-height: 29.5% !important;
  box-sizing: border-box !important;
  padding: 1.35% 1.55% 1.45% !important;
  border: 3px solid rgba(220,163,68,.76) !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, rgba(48,25,12,.97), rgba(23,12,7,.95)) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,236,190,.15) !important;
  color: #fff3d9 !important;
  pointer-events: auto !important;
}
.orgw-bram-shop-title::after {
  content: '' !important;
  display: block !important;
  width: 88% !important;
  height: 1px !important;
  margin: 1.05em 0 1.05em !important;
  background: linear-gradient(90deg, transparent, rgba(224,174,78,.86) 16%, rgba(224,174,78,.86) 84%, transparent) !important;
  box-shadow: 0 0 5px rgba(224,174,78,.22) !important;
}
.orgw-bram-shop-title > span {
  display: block !important;
  margin: 0 0 .45em !important;
  color: #e6b453 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(12px, .93vw, 20px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.62) !important;
}
.orgw-bram-shop-title h2 {
  margin: 0 !important;
  color: #fff5dc !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(34px, 3.0vw, 58px) !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: -.025em !important;
  text-shadow: 0 3px 7px rgba(0,0,0,.72) !important;
}
.orgw-bram-shop-title p {
  margin: 0 !important;
  color: #fff1d7 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(15px, 1.13vw, 23px) !important;
  font-weight: 500 !important;
  line-height: 1.38 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.72) !important;
}
[data-org-world] button.orgw-bram-shop-exit,
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus,
[data-org-world] button.orgw-bram-shop-exit:active {
  position: absolute !important;
  right: 1.45% !important;
  top: 2.05% !important;
  width: 15.7% !important;
  min-width: 0 !important;
  height: 8.2% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 1.35% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .8em !important;
  border: 3px solid rgba(255,216,140,.78) !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #b96120 0%, #7f3612 100%) !important;
  color: #fff7e0 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.26) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(18px, 1.4vw, 29px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.54) !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
[data-org-world] button.orgw-bram-shop-exit:hover,
[data-org-world] button.orgw-bram-shop-exit:focus-visible {
  transform: translateY(-1px) !important;
  filter: brightness(1.07) !important;
}
.orgw-bram-shop-exit span {
  font-family: Arial, sans-serif !important;
  font-size: 1.25em !important;
  line-height: 1 !important;
}

.orgw-bram-shop-carousel {
  position: absolute !important;
  left: 2.35% !important;
  right: 2.35% !important;
  top: 49.3% !important;
  bottom: 2.6% !important;
  z-index: 4 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  display: grid !important;
  grid-template-columns: 5.2% minmax(0, 1fr) 5.2% !important;
  align-items: center !important;
  gap: 1.0% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.orgw-bram-shop-cards {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 0 !important;
  overflow: hidden !important;
}
.orgw-bram-shop-card,
.orgw-bram-shop-card:hover,
.orgw-bram-shop-card:focus,
.orgw-bram-shop-card:active {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) auto auto auto 25px 11.5% !important;
  align-items: center !important;
  justify-items: center !important;
  align-content: stretch !important;
  gap: .6% !important;
  padding: 0 4.2% !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  color: #fff4d8 !important;
}
.orgw-bram-shop-card::before {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  top: 11% !important;
  bottom: 7% !important;
  width: 1px !important;
  background: linear-gradient(180deg, transparent, rgba(214,165,69,.58) 18%, rgba(214,165,69,.58) 82%, transparent) !important;
  pointer-events: none !important;
}
.orgw-bram-shop-card:last-child::before {
  display: none !important;
}
.orgw-bram-shop-card.is-ready {
  filter: drop-shadow(0 0 12px rgba(129,204,73,.34)) !important;
}
.orgw-bram-shop-card.is-soldout {
  opacity: .72 !important;
}
.orgw-bram-shop-card-title,
.orgw-bram-shop-card-icon,
.orgw-bram-shop-card-reward,
.orgw-bram-shop-card-requirement,
.orgw-bram-shop-progress,
.orgw-bram-shop-card-count,
[data-org-world] button.orgw-bram-shop-card-action {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
}
.orgw-bram-shop-card-icon {
  grid-row: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  place-items: end center !important;
  overflow: visible !important;
  background: transparent !important;
}
.orgw-bram-shop-card-icon img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: min(88%, 250px) !important;
  max-height: min(95%, 220px) !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: drop-shadow(0 12px 12px rgba(0,0,0,.42)) !important;
}
.orgw-bram-shop-card-title {
  grid-row: 2 !important;
  width: 100% !important;
  color: #fff5de !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(19px, 1.55vw, 32px) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 3px 6px rgba(0,0,0,.82) !important;
}
.orgw-bram-shop-card-reward {
  grid-row: 3 !important;
  width: 100% !important;
  color: #f0b74e !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, 1.16vw, 24px) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.82) !important;
}
.orgw-bram-shop-card-requirement {
  grid-row: 4 !important;
  width: 100% !important;
  color: #fff1d4 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(13px, .95vw, 20px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.82) !important;
}
.orgw-bram-shop-card-requirement::before {
  content: '' !important;
  display: inline-block !important;
  width: 1.15em !important;
  height: .82em !important;
  margin-right: .42em !important;
  vertical-align: -.05em !important;
  box-sizing: border-box !important;
  border: .13em solid #efb449 !important;
  border-radius: .12em !important;
  background:
    linear-gradient(90deg, transparent 0 18%, #efb449 18% 29%, transparent 29% 71%, #efb449 71% 82%, transparent 82% 100%),
    linear-gradient(180deg, transparent 0 18%, #efb449 18% 29%, transparent 29% 71%, #efb449 71% 82%, transparent 82% 100%) !important;
}
.orgw-bram-shop-progress {
  grid-row: 5 !important;
  grid-column: 1 !important;
  width: 84% !important;
  height: 65% !important;
  min-height: 16px !important;
  align-self: center !important;
  border: 2px solid rgba(222,164,61,.66) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: rgba(26,13,7,.78) !important;
  box-shadow: inset 0 2px 4px rgba(0,0,0,.62), 0 1px 0 rgba(255,255,255,.08) !important;
}
.orgw-bram-shop-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #d9982e 0%, #75b044 100%) !important;
}
.orgw-bram-shop-card-count {
  grid-row: 5 !important;
  grid-column: 1 !important;
  z-index: 2 !important;
  width: 100% !important;
  align-self: center !important;
  color: #fff5de !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(11px, .78vw, 17px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.92) !important;
  pointer-events: none !important;
}
[data-org-world] button.orgw-bram-shop-card-action,
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus,
[data-org-world] button.orgw-bram-shop-card-action:active {
  grid-row: 6 !important;
  width: 88% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 48px !important;
  align-self: stretch !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .55em !important;
  padding: 0 6% !important;
  border: 3px solid rgba(243,208,132,.70) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #72952e 0%, #395914 100%) !important;
  color: #fff8e5 !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.18) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, 1.15vw, 24px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.62) !important;
  opacity: 1 !important;
  visibility: visible !important;
}
[data-org-world] button.orgw-bram-shop-card-action:hover,
[data-org-world] button.orgw-bram-shop-card-action:focus-visible {
  transform: translateY(-1px) !important;
  filter: brightness(1.07) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-claim {
  background: linear-gradient(180deg, #c9802f 0%, #763d13 100%) !important;
}
[data-org-world] button.orgw-bram-shop-card-action.is-soldout {
  background: linear-gradient(180deg, #85745c 0%, #4e4333 100%) !important;
}
.orgw-bram-shop-card-action-icon {
  position: relative !important;
  width: 1.28em !important;
  height: .92em !important;
  flex: 0 0 auto !important;
  border: .11em solid currentColor !important;
  border-radius: .08em !important;
  box-sizing: border-box !important;
  background:
    linear-gradient(90deg, transparent 0 18%, currentColor 18% 29%, transparent 29% 71%, currentColor 71% 82%, transparent 82% 100%),
    linear-gradient(180deg, transparent 0 17%, currentColor 17% 28%, transparent 28% 72%, currentColor 72% 83%, transparent 83% 100%) !important;
}
[data-org-world] button.orgw-bram-shop-nav,
[data-org-world] button.orgw-bram-shop-nav:hover,
[data-org-world] button.orgw-bram-shop-nav:focus,
[data-org-world] button.orgw-bram-shop-nav:active {
  position: relative !important;
  width: 72% !important;
  aspect-ratio: 1 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  place-self: center !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 3px solid rgba(231,185,90,.72) !important;
  border-radius: 50% !important;
  background: rgba(56,34,18,.92) !important;
  color: #f0b84f !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.12) !important;
  font-family: Arial, sans-serif !important;
  font-size: clamp(36px, 3.2vw, 62px) !important;
  font-weight: 400 !important;
  line-height: .8 !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.65) !important;
}
[data-org-world] button.orgw-bram-shop-nav:disabled {
  opacity: .34 !important;
  cursor: default !important;
}
.orgw-bram-shop-footer {
  position: absolute !important;
  left: 50% !important;
  bottom: .8% !important;
  z-index: 6 !important;
  width: auto !important;
  transform: translateX(-50%) !important;
  display: block !important;
  pointer-events: none !important;
}
.orgw-bram-shop-footer p {
  display: none !important;
}
.orgw-bram-shop-dots {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
}
[data-org-world] button.orgw-bram-shop-dot {
  width: 11px !important;
  min-width: 11px !important;
  height: 11px !important;
  min-height: 11px !important;
  padding: 0 !important;
  border: 2px solid rgba(233,190,100,.66) !important;
  border-radius: 50% !important;
  background: rgba(31,17,9,.76) !important;
  box-shadow: 0 2px 4px rgba(0,0,0,.42) !important;
  pointer-events: auto !important;
}
[data-org-world] button.orgw-bram-shop-dot.is-active {
  background: #e9aa3f !important;
}

@media (max-width: 1100px), (max-height: 700px) {
  .orgw-bram-shop-title {
    left: 1.1% !important;
    top: 1.5% !important;
    width: 25.5% !important;
    min-height: 30.5% !important;
    padding: 1.15% 1.35% 1.2% !important;
    border-width: 2px !important;
    border-radius: 16px !important;
  }
  .orgw-bram-shop-title > span { font-size: 10px !important; }
  .orgw-bram-shop-title h2 { font-size: 30px !important; }
  .orgw-bram-shop-title p { font-size: 12px !important; }
  [data-org-world] button.orgw-bram-shop-exit {
    right: 1.15% !important;
    top: 1.45% !important;
    width: 16.2% !important;
    height: 8.6% !important;
    border-width: 2px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }
  .orgw-bram-shop-carousel {
    left: 1.8% !important;
    right: 1.8% !important;
    top: 48.0% !important;
    bottom: 2.2% !important;
    grid-template-columns: 4.8% minmax(0, 1fr) 4.8% !important;
    gap: .7% !important;
  }
  .orgw-bram-shop-card {
    grid-template-rows: minmax(0, 1fr) auto auto auto 18px 11.7% !important;
    padding: 0 3.4% !important;
  }
  .orgw-bram-shop-card-icon img {
    max-width: min(86%, 175px) !important;
    max-height: min(94%, 145px) !important;
  }
  .orgw-bram-shop-card-title { font-size: 18px !important; }
  .orgw-bram-shop-card-reward { font-size: 14px !important; }
  .orgw-bram-shop-card-requirement { font-size: 11px !important; }
  .orgw-bram-shop-progress { min-height: 12px !important; border-width: 1px !important; }
  .orgw-bram-shop-card-count { font-size: 9px !important; }
  [data-org-world] button.orgw-bram-shop-card-action {
    min-height: 36px !important;
    border-width: 2px !important;
    border-radius: 11px !important;
    font-size: 13px !important;
  }
  [data-org-world] button.orgw-bram-shop-nav {
    width: 78% !important;
    border-width: 2px !important;
    font-size: 36px !important;
  }
  [data-org-world] button.orgw-bram-shop-dot {
    width: 8px !important;
    min-width: 8px !important;
    height: 8px !important;
    min-height: 8px !important;
  }
}

/* ========================================================================
   ORG World 0.1.92 — Bram fixed 16:9 safe area and complete offer slider
   Scope: Bram's interior only. The rest of the game keeps normal cover fit.
   ======================================================================== */
.orgw-modal.is-bram-shop {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background: #090604 !important;
}
.orgw-modal.is-bram-shop .orgw-modal-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: #090604 !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #22160d !important;
  box-shadow: none !important;
}
.orgw-modal.is-bram-shop .orgw-modal-card > .orgw-modal-close {
  display: none !important;
}
.orgw-modal.is-bram-shop [data-modal-content] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.orgw-bram-live-stage,
.orgw-bram-live-stage * {
  box-sizing: border-box !important;
  -webkit-tap-highlight-color: transparent !important;
}
.orgw-bram-live-stage {
  --bram-gold: #e0aa4d;
  --bram-cream: #fff1d0;
  --bram-green-1: #7ba92d;
  --bram-green-2: #34570f;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #22160d !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  touch-action: pan-y !important;
}
.orgw-bram-live-bg,
.orgw-bram-live-bg-fallback {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.orgw-bram-live-bg {
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}
.orgw-bram-live-bg-fallback {
  background: #22160d !important;
}
.orgw-bram-live-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.04) 50%, rgba(0,0,0,.30) 100%) !important;
}
.orgw-bram-live-panel,
.orgw-bram-live-exit,
.orgw-bram-live-nav,
.orgw-bram-live-carousel,
.orgw-bram-live-dots {
  z-index: 3 !important;
}
/* 1920x1080 safe-area reference: x80 y55 w470 h360 */
.orgw-bram-live-panel {
  position: absolute !important;
  left: 4.1667% !important;
  top: 5.0926% !important;
  width: 24.4792% !important;
  height: 33.3333% !important;
  min-height: 0 !important;
  padding: 1.25% 1.45% !important;
  overflow: hidden !important;
  border: 2px solid rgba(226,170,77,.78) !important;
  border-radius: 1.15vw !important;
  background: linear-gradient(145deg, rgba(43,23,11,.96), rgba(25,12,6,.92)) !important;
  box-shadow: 0 .8vw 1.8vw rgba(0,0,0,.35), inset 0 0 1.1vw rgba(255,188,74,.06) !important;
}
.orgw-bram-live-eyebrow {
  color: #e9bc65 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(9px, .62vw, 15px) !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}
.orgw-bram-live-panel h1 {
  margin: .28vw 0 .48vw !important;
  color: #fff4da !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(23px, 1.8vw, 38px) !important;
  font-weight: 900 !important;
  line-height: .96 !important;
  text-shadow: 0 .15vw .3vw rgba(0,0,0,.7) !important;
}
.orgw-bram-live-divider {
  height: 1px !important;
  margin: .52vw 0 .62vw !important;
  background: linear-gradient(90deg, transparent, #c7913d, transparent) !important;
}
.orgw-bram-live-panel p {
  margin: 0 !important;
  color: #fff3da !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(11px, .83vw, 18px) !important;
  font-weight: 600 !important;
  line-height: 1.33 !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.7) !important;
}
/* 1920x1080 reference: x1570 y50 w280 h120 */
[data-org-world] button.orgw-bram-live-exit,
[data-org-world] button.orgw-bram-live-exit:hover,
[data-org-world] button.orgw-bram-live-exit:focus,
[data-org-world] button.orgw-bram-live-exit:active {
  position: absolute !important;
  right: 3.6458% !important;
  top: 4.6296% !important;
  width: 14.5833% !important;
  min-width: 0 !important;
  height: 11.1111% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .6vw !important;
  border: 2px solid #f2c170 !important;
  border-radius: 1.05vw !important;
  background: linear-gradient(#b86220, #873b12) !important;
  color: #fff6dd !important;
  box-shadow: 0 .6vw 1.2vw rgba(0,0,0,.35), inset 0 1px rgba(255,255,255,.2) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(16px, 1.15vw, 25px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
[data-org-world] button.orgw-bram-live-exit:active {
  transform: scale(.98) !important;
}
.orgw-bram-live-exit > span {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1.18em !important;
}
/* 1920x1080 reference: x140 y610 w1640 h360 */
.orgw-bram-live-carousel {
  position: absolute !important;
  left: 7.2917% !important;
  top: 56.4815% !important;
  width: 85.4167% !important;
  height: 33.3333% !important;
  right: auto !important;
  bottom: auto !important;
  overflow: hidden !important;
  contain: layout paint !important;
}
.orgw-bram-live-track {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  transition: transform .42s cubic-bezier(.2,.8,.2,1) !important;
  will-change: transform !important;
}
.orgw-bram-live-page {
  flex: 0 0 100% !important;
  width: 100% !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  column-gap: 2.439% !important;
  align-items: stretch !important;
}
.orgw-bram-live-offer {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-rows: 46% 10% 7% 8% 5% 16% !important;
  row-gap: 1.6% !important;
  align-items: center !important;
  justify-items: center !important;
  padding: 0 2.5% !important;
  color: var(--bram-cream) !important;
  text-align: center !important;
  overflow: hidden !important;
}
.orgw-bram-live-offer:not(:last-child)::after {
  content: '' !important;
  position: absolute !important;
  right: -5.4% !important;
  top: 4% !important;
  bottom: 3% !important;
  width: 1px !important;
  background: linear-gradient(transparent, rgba(221,168,74,.46), transparent) !important;
}
.orgw-bram-live-item,
.orgw-bram-live-item-placeholder {
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
}
.orgw-bram-live-item {
  display: block !important;
  width: 66% !important;
  height: 100% !important;
  max-width: 242px !important;
  max-height: 165px !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: drop-shadow(0 .55vw .65vw rgba(0,0,0,.48)) !important;
}
.orgw-bram-live-item-placeholder {
  width: 60% !important;
  height: 70% !important;
}
.orgw-bram-live-name {
  grid-row: 2 !important;
  width: 100% !important;
  color: #fff1d0 !important;
  font-size: clamp(15px, 1.15vw, 25px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-shadow: 0 3px 4px rgba(0,0,0,.78) !important;
}
.orgw-bram-live-qty {
  grid-row: 3 !important;
  width: 100% !important;
  color: #edb950 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(10px, .72vw, 16px) !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.8) !important;
}
.orgw-bram-live-ads {
  grid-row: 4 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .35em !important;
  width: 100% !important;
  color: #fff1d0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(10px, .72vw, 16px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.8) !important;
}
.orgw-bram-live-ads::before {
  content: '▶' !important;
  width: 1.45em !important;
  height: 1.2em !important;
  display: grid !important;
  place-items: center !important;
  border: 2px solid #e8b650 !important;
  border-radius: .18em !important;
  color: #f7cb6b !important;
  font-size: .82em !important;
  line-height: 1 !important;
}
.orgw-bram-live-progress {
  grid-row: 5 !important;
  position: relative !important;
  width: 72% !important;
  height: 58% !important;
  min-height: 8px !important;
  max-height: 18px !important;
  border: 1px solid rgba(231,181,83,.86) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: rgba(20,11,5,.78) !important;
  box-shadow: inset 0 2px 3px rgba(0,0,0,.5) !important;
}
.orgw-bram-live-progress > span {
  display: block !important;
  width: var(--p, 0%) !important;
  height: 100% !important;
  background: linear-gradient(90deg, #d59726, #6ca33e) !important;
}
.orgw-bram-live-progress > b {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  color: #fff1d0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(8px, .55vw, 12px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px #000 !important;
}
[data-org-world] button.orgw-bram-live-action,
[data-org-world] button.orgw-bram-live-action:hover,
[data-org-world] button.orgw-bram-live-action:focus,
[data-org-world] button.orgw-bram-live-action:active {
  grid-row: 6 !important;
  align-self: center !important;
  width: 70% !important;
  min-width: 0 !important;
  height: 82% !important;
  min-height: 42px !important;
  max-height: 58px !important;
  margin: 0 !important;
  padding: 0 5% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .36em !important;
  border: 2px solid rgba(255,230,165,.62) !important;
  border-radius: .75vw !important;
  background: linear-gradient(180deg, #7daa31, #36580f) !important;
  color: #fff4d8 !important;
  box-shadow: 0 .4vw .8vw rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.18) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(12px, .82vw, 18px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.5) !important;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: hidden !important;
}
[data-org-world] button.orgw-bram-live-action.is-ready {
  background: linear-gradient(180deg, #d39231, #7b4516) !important;
}
[data-org-world] button.orgw-bram-live-action.is-sold {
  background: linear-gradient(180deg, #756a58, #494033) !important;
  color: #e2d7c3 !important;
}
[data-org-world] button.orgw-bram-live-action:active:not(:disabled) {
  transform: scale(.98) !important;
}
.orgw-bram-live-film {
  width: 1.28em !important;
  height: 1.02em !important;
  display: inline-grid !important;
  place-items: center !important;
  border: 2px solid currentColor !important;
  border-radius: .18em !important;
}
.orgw-bram-live-film::before {
  content: '▶' !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .58em !important;
}
/* 1920x1080 reference arrows: x35/y760 and x1829/y760 */
[data-org-world] button.orgw-bram-live-nav,
[data-org-world] button.orgw-bram-live-nav:hover,
[data-org-world] button.orgw-bram-live-nav:focus,
[data-org-world] button.orgw-bram-live-nav:active {
  position: absolute !important;
  top: 70.3704% !important;
  width: 2.9167% !important;
  min-width: 46px !important;
  height: 5.1852% !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 2px solid rgba(232,181,80,.86) !important;
  border-radius: 50% !important;
  background: rgba(42,22,10,.72) !important;
  color: #f0bd5a !important;
  box-shadow: 0 .35vw .8vw rgba(0,0,0,.32) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(24px, 2vw, 42px) !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
[data-org-world] button.orgw-bram-live-nav.is-left {
  left: 1.8229% !important;
}
[data-org-world] button.orgw-bram-live-nav.is-right {
  right: 1.8229% !important;
}
[data-org-world] button.orgw-bram-live-nav:active {
  transform: scale(.95) !important;
}
.orgw-bram-live-dots {
  position: absolute !important;
  left: 50% !important;
  bottom: 6.25% !important;
  display: flex !important;
  gap: .55vw !important;
  transform: translateX(-50%) !important;
}
[data-org-world] button.orgw-bram-live-dot {
  width: .78vw !important;
  min-width: 10px !important;
  height: .78vw !important;
  min-height: 10px !important;
  padding: 0 !important;
  border: 2px solid rgba(235,190,94,.9) !important;
  border-radius: 50% !important;
  background: rgba(38,20,9,.78) !important;
  box-shadow: 0 2px 4px rgba(0,0,0,.45) !important;
}
[data-org-world] button.orgw-bram-live-dot.is-active {
  background: #f1b938 !important;
  box-shadow: 0 0 .8vw rgba(255,193,53,.72) !important;
}

/* ========================================================================
   ORG World 0.1.93 — Bram mobile typography and button readability pass
   Scope: Bram's interior only. Item artwork remains unchanged.
   ======================================================================== */
.orgw-bram-live-panel {
  padding: 24px 28px !important;
}
.orgw-bram-live-eyebrow {
  font-size: 18px !important;
  line-height: 1.1 !important;
}
.orgw-bram-live-panel h1 {
  margin: 7px 0 11px !important;
  font-size: 42px !important;
  line-height: .96 !important;
}
.orgw-bram-live-divider {
  margin: 11px 0 13px !important;
}
.orgw-bram-live-panel p {
  font-size: 22px !important;
  line-height: 1.3 !important;
}
[data-org-world] button.orgw-bram-live-exit,
[data-org-world] button.orgw-bram-live-exit:hover,
[data-org-world] button.orgw-bram-live-exit:focus,
[data-org-world] button.orgw-bram-live-exit:active {
  width: 320px !important;
  height: 125px !important;
  padding: 0 24px !important;
  gap: 14px !important;
  font-size: 30px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.orgw-bram-live-exit > span {
  flex: 0 0 auto !important;
  font-size: 28px !important;
}

/* Increase the reserved offer area instead of scaling or moving content outside it. */
.orgw-bram-live-carousel {
  top: 53.2407% !important; /* 575px */
  height: 37.9630% !important; /* 410px */
}
.orgw-bram-live-offer {
  grid-template-rows: 42% 9% 7% 7% 5% 18% !important;
  row-gap: 2.4% !important;
  padding: 0 2.5% !important;
  overflow: hidden !important;
}
/* Item size intentionally unchanged from v0.1.92. */
.orgw-bram-live-item {
  width: 66% !important;
  height: 100% !important;
  max-width: 242px !important;
  max-height: 165px !important;
}
.orgw-bram-live-name {
  font-size: 30px !important;
  line-height: 1.05 !important;
  padding: 0 4px !important;
}
.orgw-bram-live-qty {
  font-size: 20px !important;
  line-height: 1.08 !important;
  padding: 0 4px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.orgw-bram-live-ads {
  font-size: 20px !important;
  line-height: 1.08 !important;
  padding: 0 4px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.orgw-bram-live-ads::before {
  flex: 0 0 auto !important;
  border-width: 2px !important;
}
.orgw-bram-live-progress {
  width: 78% !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  align-self: center !important;
}
.orgw-bram-live-progress > b {
  font-size: 18px !important;
  line-height: 1 !important;
}
[data-org-world] button.orgw-bram-live-action,
[data-org-world] button.orgw-bram-live-action:hover,
[data-org-world] button.orgw-bram-live-action:focus,
[data-org-world] button.orgw-bram-live-action:active {
  width: 85% !important;
  height: 68px !important;
  min-height: 68px !important;
  max-height: 68px !important;
  padding: 0 18px !important;
  gap: 10px !important;
  border-radius: 14px !important;
  font-size: 26px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  overflow: hidden !important;
}
.orgw-bram-live-film {
  flex: 0 0 auto !important;
  width: 28px !important;
  height: 23px !important;
  border-width: 2px !important;
}
.orgw-bram-live-dots {
  bottom: 3.7% !important;
}

/* ========================================================================
   ORG World 0.1.94 — Bram shop minimum 24px typography pass
   Scope: Bram's interior only. Item artwork remains unchanged.
   Every text element is at least 24px in the 1920x1080 reference layout.
   ======================================================================== */
.orgw-bram-live-panel {
  padding: 24px 28px !important;
}
.orgw-bram-live-eyebrow {
  font-size: 24px !important;
  line-height: 1.08 !important;
}
.orgw-bram-live-panel h1 {
  margin: 7px 0 10px !important;
  font-size: 52px !important;
  line-height: .94 !important;
}
.orgw-bram-live-divider {
  margin: 10px 0 12px !important;
}
.orgw-bram-live-panel p {
  font-size: 28px !important;
  line-height: 1.28 !important;
}
[data-org-world] button.orgw-bram-live-exit,
[data-org-world] button.orgw-bram-live-exit:hover,
[data-org-world] button.orgw-bram-live-exit:focus,
[data-org-world] button.orgw-bram-live-exit:active {
  width: 330px !important;
  height: 130px !important;
  padding: 0 26px !important;
  gap: 15px !important;
  font-size: 36px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.orgw-bram-live-exit > span {
  flex: 0 0 auto !important;
  font-size: 34px !important;
}

/* More vertical room is reserved for the larger text and controls. */
.orgw-bram-live-carousel {
  top: 48.6111% !important; /* 525px */
  height: 42.1296% !important; /* 455px */
}
.orgw-bram-live-offer {
  grid-template-rows: minmax(0, 1fr) 76px 34px 34px 32px 78px !important;
  row-gap: 7px !important;
  padding: 0 2.5% !important;
  overflow: hidden !important;
}
/* Item artwork remains exactly as in v0.1.93. */
.orgw-bram-live-item {
  width: 66% !important;
  height: 100% !important;
  max-width: 242px !important;
  max-height: 165px !important;
}
.orgw-bram-live-name {
  display: grid !important;
  place-items: center !important;
  font-size: 36px !important;
  line-height: 1.02 !important;
  padding: 0 4px !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-bram-live-qty {
  display: grid !important;
  place-items: center !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  padding: 0 4px !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.orgw-bram-live-ads {
  font-size: 24px !important;
  line-height: 1.08 !important;
  padding: 0 4px !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
.orgw-bram-live-ads::before {
  flex: 0 0 auto !important;
  border-width: 2px !important;
}
.orgw-bram-live-progress {
  width: 80% !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  align-self: center !important;
}
.orgw-bram-live-progress > b {
  font-size: 24px !important;
  line-height: 1 !important;
}
[data-org-world] button.orgw-bram-live-action,
[data-org-world] button.orgw-bram-live-action:hover,
[data-org-world] button.orgw-bram-live-action:focus,
[data-org-world] button.orgw-bram-live-action:active {
  width: 88% !important;
  height: 78px !important;
  min-height: 78px !important;
  max-height: 78px !important;
  padding: 0 20px !important;
  gap: 12px !important;
  border-radius: 16px !important;
  font-size: 32px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-overflow: clip !important;
  overflow: hidden !important;
}
.orgw-bram-live-film {
  flex: 0 0 auto !important;
  width: 31px !important;
  height: 26px !important;
  border-width: 2px !important;
}
.orgw-bram-live-dots {
  bottom: 3.3% !important;
}

/* ========================================================================
   ORG World 0.1.95 — Ironport mission typography minimum 22px
   Scope: mission tracker and Ironport mission frame only.
   ======================================================================== */

/* Mission tracker: wider, scrollable, and no text below 22px. */
.orgw-mission-tracker {
  right: 1.1% !important;
  top: 13.5% !important;
  width: 29% !important;
  max-height: 80% !important;
}
.orgw-mission-tracker > header {
  min-height: 92px !important;
  padding: 14px 14px 14px 18px !important;
  gap: 12px !important;
}
.orgw-mission-tracker > header span {
  font-size: 22px !important;
  line-height: 1.05 !important;
  letter-spacing: .09em !important;
}
.orgw-mission-tracker > header strong {
  font-size: 30px !important;
  line-height: 1.02 !important;
  white-space: normal !important;
}
.orgw-mission-tracker > header button {
  flex-basis: 56px !important;
  width: 56px !important;
  height: 56px !important;
  font-size: 38px !important;
}
.orgw-mission-tracker-list {
  gap: 12px !important;
  padding: 13px !important;
  overflow-y: auto !important;
}
.orgw-mission-tracker-card {
  gap: 11px !important;
  padding: 14px !important;
}
.orgw-mission-tracker-card-head {
  grid-template-columns: 48px minmax(0,1fr) auto !important;
  gap: 10px !important;
}
.orgw-mission-tracker-card-head > i {
  width: 46px !important;
  height: 46px !important;
  font-size: 24px !important;
}
.orgw-mission-tracker-card-head strong {
  font-size: 26px !important;
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-mission-tracker-card-head small,
.orgw-mission-tracker-card-head > b {
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-mission-tracker-goals {
  gap: 7px !important;
}
.orgw-mission-tracker-goal {
  grid-template-columns: 24px minmax(0,1fr) auto !important;
  gap: 7px !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
}
.orgw-mission-tracker-goal b {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-mission-tracker-goal em {
  font-size: 22px !important;
  white-space: nowrap !important;
}
.orgw-mission-tracker-open {
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-mission-tracker.is-collapsed {
  width: 86px !important;
  max-height: 86px !important;
}
.orgw-mission-tracker.is-collapsed > header {
  min-height: 86px !important;
  padding: 12px !important;
}

/* Full Ironport mission view: readable hierarchy with a 22px floor. */
.orgw-mission-frame.has-speaker .orgw-mission-frame-title,
.orgw-mission-frame-title {
  font-size: 44px !important;
  line-height: 1.02 !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-chapter,
.orgw-mission-frame-chapter {
  font-size: 22px !important;
  line-height: 1.05 !important;
}
.orgw-mission-frame-nameplate {
  padding: 9px 12px 8px !important;
  font-size: 26px !important;
  line-height: 1.04 !important;
}
.orgw-mission-frame-speaker-role,
.orgw-mission-frame-role {
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-content,
.orgw-mission-frame-content {
  top: 30.2% !important;
  height: 54.7% !important;
  padding: .9% 1.35% 1% !important;
  gap: 7px !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
}
.orgw-mission-frame.has-speaker .orgw-mission-frame-copy:first-of-type,
.orgw-mission-frame-copy {
  min-height: 70px !important;
  padding: 9px 13px !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
}
.orgw-ironport-objective-grid {
  gap: 8px !important;
}
.orgw-mission-frame.has-speaker .orgw-ironport-objective,
.orgw-ironport-objective {
  min-height: 78px !important;
  padding: 7px 10px !important;
  grid-template-columns: 44px minmax(0,1fr) auto !important;
  gap: 9px !important;
}
.orgw-ironport-objective > i {
  width: 40px !important;
  height: 40px !important;
  font-size: 24px !important;
}
.orgw-mission-frame.has-speaker .orgw-ironport-objective strong,
.orgw-ironport-objective strong {
  font-size: 24px !important;
  line-height: 1.05 !important;
  overflow-wrap: anywhere !important;
}
.orgw-mission-frame.has-speaker .orgw-ironport-objective span,
.orgw-ironport-objective span,
.orgw-ironport-objective-source {
  font-size: 22px !important;
  line-height: 1.06 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-ironport-objective button {
  min-height: 50px !important;
  padding: 7px 14px !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
.orgw-ironport-objective > b {
  font-size: 32px !important;
}
.orgw-mission-frame.has-speaker .orgw-ironport-story-rewards,
.orgw-ironport-story-rewards {
  min-height: 48px !important;
  padding: 8px 12px !important;
  font-size: 22px !important;
  line-height: 1.08 !important;
  flex-wrap: wrap !important;
}
.orgw-mission-frame-extra-actions {
  gap: 10px !important;
}
.orgw-mission-frame-extra-actions button {
  min-height: 48px !important;
  padding: 8px 16px !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
.orgw-mission-frame-buttons button {
  font-size: 30px !important;
  line-height: 1 !important;
}
.orgw-ironport-visit-notice,
.orgw-ironport-next-chapter,
.orgw-lighthouse-progress b {
  font-size: 22px !important;
}

/* ========================================================================
   ORG World 0.1.96 — Season Goals readable 22–28 px typography
   Only the Season Goals page is affected.
   ======================================================================== */
.orgw-season-frame-nav button {
  min-height: 46px !important;
  padding: 8px 14px !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
.orgw-season-frame-header strong {
  font-size: 28px !important;
  line-height: 1.02 !important;
}
.orgw-season-frame-header span {
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}
.orgw-season-frame-overflow {
  grid-template-columns: minmax(0, 21%) minmax(0, 1fr) minmax(120px, 25%) !important;
  gap: 1% !important;
  padding: .5% 2.2% !important;
}
.orgw-season-frame-overflow-copy strong {
  font-size: 24px !important;
  line-height: 1 !important;
  white-space: normal !important;
}
.orgw-season-frame-overflow-copy span {
  font-size: 22px !important;
  line-height: 1.02 !important;
  white-space: normal !important;
}
[data-org-world] .orgw-season-frame-overflow button {
  min-height: 46px !important;
  padding: 6px 8px !important;
  font-size: 22px !important;
  line-height: 1 !important;
  white-space: normal !important;
}
.orgw-season-frame-weekly {
  gap: 1% !important;
  padding: 1% 3.5% 1.1% !important;
}
.orgw-season-frame-weekly h3 {
  font-size: 23px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
.orgw-season-frame-weekly-grid {
  gap: .8% !important;
}
.orgw-season-weekly-item,
.orgw-season-weekly-status {
  grid-template-rows: minmax(0, 1fr) 26px 26px !important;
  gap: 0 !important;
  padding: 0 1% !important;
}
.orgw-season-weekly-item img {
  width: 48% !important;
  max-height: 62px !important;
}
.orgw-season-weekly-item b {
  font-size: 22px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
.orgw-season-weekly-item em,
.orgw-season-weekly-status {
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
[data-org-world] button.orgw-season-weekly-status {
  min-height: 46px !important;
  padding: 6px 8px !important;
}
.orgw-season-frame-missions {
  gap: .7% !important;
  padding: 0 1.5% 1% !important;
}
.orgw-season-frame-missions > h3 {
  font-size: 22px !important;
  line-height: 1 !important;
  color: #ffffff !important;
  text-shadow: 0 2px 4px rgba(35, 18, 4, .92) !important;
}
.orgw-season-frame-mission-grid {
  gap: .8% !important;
}
.orgw-season-frame-mission {
  grid-template-rows: minmax(42px, 30%) 26px 26px 26px 7px 42px !important;
  gap: 1px !important;
  padding: 1% 2.2% 1.3% !important;
  overflow: hidden !important;
}
.orgw-season-frame-mission-icon {
  width: 46% !important;
  max-height: 58px !important;
  align-self: end !important;
}
.orgw-season-frame-mission strong,
.orgw-season-frame-mission span,
.orgw-season-frame-mission small,
.orgw-season-frame-mission i,
.orgw-season-frame-mission b,
[data-org-world] .orgw-season-frame-mission button {
  min-width: 0 !important;
  max-width: 100% !important;
  font-size: 22px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.orgw-season-frame-mission strong {
  font-weight: 900 !important;
}
.orgw-season-frame-mission small {
  font-weight: 900 !important;
}
[data-org-world] .orgw-season-frame-mission button,
.orgw-season-frame-mission > i,
.orgw-season-frame-mission > b {
  min-height: 40px !important;
  padding: 6px 4px !important;
  display: grid !important;
  place-items: center !important;
}

/* ========================================================================
   ORG World 0.1.97 — 22px readability floor for Daily Tasks, Animal Pen,
   Market Cart and the Daily Quest Board. Existing larger typography remains.
   ======================================================================== */

/* Daily Tasks: reserve enough vertical space for the larger copy. */
.orgw-modal.is-daily-tasks .orgw-tasks-v3-meta,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-meta button,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-scroll h3,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-copy strong,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-copy p,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-progress b,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward span,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward small,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward em,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-track,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock strong,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock span,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock button,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-empty,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-complete,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-feedback strong,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-feedback span {
  font-size: max(22px, var(--orgw-tasks-readable-size, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-copy strong {
  font-size: max(22px, var(--orgw-tasks-task_title, 24px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-meta {
  font-size: max(22px, var(--orgw-tasks-intro, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-scroll h3,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock strong,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-empty,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-complete {
  font-size: max(22px, var(--orgw-tasks-section_title, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-copy p {
  font-size: max(22px, var(--orgw-tasks-task_description, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-progress {
  height: 27px !important;
  min-height: 27px !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-progress b {
  font-size: max(22px, var(--orgw-tasks-progress, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward span {
  font-size: max(22px, var(--orgw-tasks-reward_amount, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward small,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-reward em {
  font-size: max(22px, var(--orgw-tasks-reward_detail, 22px)) !important;
  line-height: 1.04 !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-track,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock button,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-meta button {
  font-size: max(22px, var(--orgw-tasks-button, 22px)) !important;
  min-height: 54px !important;
  padding: 7px 12px !important;
  line-height: 1 !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock span {
  font-size: max(22px, var(--orgw-tasks-section_body, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-feedback strong {
  font-size: max(22px, var(--orgw-tasks-feedback_title, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-feedback span {
  font-size: max(22px, var(--orgw-tasks-feedback_body, 22px)) !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-row {
  grid-template-columns: 9.2% minmax(0,1fr) 14% 17.5% !important;
  min-height: 132px !important;
  gap: 1% !important;
  padding: .7% .9% !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-copy p,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock span,
.orgw-modal.is-daily-tasks .orgw-tasks-v3-feedback span {
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-scroll {
  overscroll-behavior: contain !important;
  padding-bottom: 1.2% !important;
}
.orgw-modal.is-daily-tasks .orgw-tasks-v3-premium-lock {
  min-height: 82px !important;
}

/* Animal Pen: all live labels and actions use at least 22px. */
.orgw-modal.is-animal-pen .orgw-animal-pen-message strong {
  font-size: max(22px, 25px) !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-message span,
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity strong,
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity span,
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity b,
.orgw-modal.is-animal-pen .orgw-animal-pen-card > span,
.orgw-modal.is-animal-pen .orgw-animal-pen-card > b,
.orgw-modal.is-animal-pen .orgw-animal-pen-card-actions button,
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions button strong,
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions button span {
  font-size: 22px !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-card > strong {
  font-size: max(22px, 24px) !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-message {
  line-height: 1.08 !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-message span {
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity {
  grid-template-columns: auto minmax(0,1fr) auto !important;
  column-gap: 12px !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity strong,
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity span,
.orgw-modal.is-animal-pen .orgw-animal-pen-capacity b {
  line-height: 1.02 !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions {
  top: 36.0% !important;
  height: 7.4% !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions button {
  padding: 4px 8px !important;
  gap: 2px !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions button strong,
.orgw-modal.is-animal-pen .orgw-animal-pen-bulk-actions button span {
  line-height: 1 !important;
  white-space: nowrap !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-card {
  grid-template-rows: 14% minmax(0,1fr) 14% 13% 21% !important;
  padding: 1.2% 4.2% 2.8% !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-card > span {
  line-height: 1.02 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-animal-pen .orgw-animal-pen-card-actions button {
  line-height: 1 !important;
  padding: 3px 6px !important;
  white-space: normal !important;
}

/* Market Cart: preserve larger configured text and raise only smaller labels. */
.orgw-modal.is-market-cart .orgw-market-template-message strong {
  font-size: max(22px, var(--orgw-market-message_title, 22px)) !important;
}
.orgw-modal.is-market-cart .orgw-market-template-message span {
  font-size: max(22px, var(--orgw-market-message_body, 22px)) !important;
}
.orgw-modal.is-market-cart .orgw-market-card-name {
  font-size: max(22px, var(--orgw-market-product_name, 22px)) !important;
}
.orgw-modal.is-market-cart .orgw-market-card-count {
  font-size: max(22px, var(--orgw-market-product_meta, 22px)) !important;
}
.orgw-modal.is-market-cart .orgw-market-card-price {
  font-size: max(22px, var(--orgw-market-price, 22px)) !important;
}
[data-org-world] .orgw-modal.is-market-cart .orgw-market-card-sell-one,
[data-org-world] .orgw-modal.is-market-cart .orgw-market-card-sell-all {
  font-size: max(22px, var(--orgw-market-button, 22px)) !important;
  line-height: 1 !important;
  padding: 4px 3px !important;
  white-space: nowrap !important;
}
.orgw-modal.is-market-cart .orgw-market-template-footer {
  font-size: max(22px, var(--orgw-market-footer, 22px)) !important;
  line-height: 1.05 !important;
}
.orgw-modal.is-market-cart .orgw-market-template-message span,
.orgw-modal.is-market-cart .orgw-market-template-footer {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-market-cart .orgw-market-card-name,
.orgw-modal.is-market-cart .orgw-market-card-count,
.orgw-modal.is-market-cart .orgw-market-card-price {
  line-height: 1 !important;
}

/* Daily Quest Board visitor only; other character and story missions are untouched. */
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list,
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list > strong,
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li,
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li strong,
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li span,
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-note {
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li {
  align-items: center !important;
  min-height: 42px !important;
  gap: 16px !important;
}
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li strong {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-mission-frame.is-daily-quest-board .orgw-visitor-quest-list li span {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}


/* ========================================================================
   ORG World 0.1.98 — 22px readability floor for Plant Field,
   Farmhouse Kitchen and Character Needs. Existing larger text is preserved.
   ======================================================================== */

/* Plant Field: all live labels are at least 22px and remain inside the art. */
.orgw-modal.is-field-panel .orgw-field-template-message span,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > strong,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > b,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > small,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-cta,
.orgw-modal.is-field-panel .orgw-field-template-card > strong,
.orgw-modal.is-field-panel .orgw-field-template-card > span,
.orgw-modal.is-field-panel .orgw-field-template-metrics b,
.orgw-modal.is-field-panel .orgw-field-template-selected span,
.orgw-modal.is-field-panel .orgw-field-template-selected strong,
.orgw-modal.is-field-panel .orgw-field-template-status span,
.orgw-modal.is-field-panel .orgw-field-template-status small {
  font-size: 22px !important;
}
.orgw-modal.is-field-panel .orgw-field-template-message strong,
.orgw-modal.is-field-panel .orgw-field-template-status strong,
.orgw-modal.is-field-panel button.orgw-field-template-primary {
  /* These were already larger than the new floor. */
}
.orgw-modal.is-field-panel .orgw-field-template-message span,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > b,
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > small,
.orgw-modal.is-field-panel .orgw-field-template-card > span,
.orgw-modal.is-field-panel .orgw-field-template-status span,
.orgw-modal.is-field-panel .orgw-field-template-status small {
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy {
  grid-template-columns: auto minmax(0,1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 2px 12px !important;
}
.orgw-modal.is-field-panel .orgw-field-template-upgrade-copy > strong {
  line-height: 1 !important;
}
.orgw-modal.is-field-panel .orgw-field-template-upgrade-cta {
  min-height: 52px !important;
  line-height: 1 !important;
  padding: 6px 10px !important;
  white-space: normal !important;
}
.orgw-modal.is-field-panel .orgw-field-template-cards {
  top: 49.4% !important;
  height: 29.2% !important;
}
.orgw-modal.is-field-panel button.orgw-field-template-card {
  grid-template-rows: 15% minmax(0,46%) 16% 23% !important;
  padding: 2% 3% 2.4% !important;
}
.orgw-modal.is-field-panel .orgw-field-template-card > img {
  width: 72% !important;
  max-width: 100% !important;
}
.orgw-modal.is-field-panel .orgw-field-template-card > strong,
.orgw-modal.is-field-panel .orgw-field-template-card > span,
.orgw-modal.is-field-panel .orgw-field-template-metrics b {
  line-height: 1 !important;
}
.orgw-modal.is-field-panel .orgw-field-template-metrics {
  gap: 1% !important;
}
.orgw-modal.is-field-panel .orgw-field-template-metrics b {
  overflow: visible !important;
  text-overflow: clip !important;
}
.orgw-modal.is-field-panel .orgw-field-template-selected {
  top: 84.1% !important;
  height: 8.2% !important;
}
.orgw-modal.is-field-panel .orgw-field-template-selected span,
.orgw-modal.is-field-panel .orgw-field-template-selected strong {
  line-height: 1 !important;
}
.orgw-modal.is-field-panel .orgw-field-template-status {
  padding: 1.4% 5% !important;
}

/* Farmhouse Kitchen: 22px minimum, with scrollable cards for longer copy. */
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-kitchen-header p,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-section-heading h3,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-section-heading > b,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-section-heading button,
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy span,
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy small,
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-actions button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-potion-preview span,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-potion-preview button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card span,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card b,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card button,
.orgw-modal.is-farmhouse-kitchen .orgw-animal-pen-launch > div > span,
.orgw-modal.is-farmhouse-kitchen .orgw-animal-pen-launch button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-kitchen-footer {
  font-size: 22px !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-section-heading h3,
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy span,
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy small,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-potion-preview span,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card span,
.orgw-modal.is-farmhouse-kitchen .orgw-animal-pen-launch > div > span,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-kitchen-footer {
  line-height: 1.16 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-card {
  min-height: 286px !important;
  grid-template-columns: 168px minmax(0,1fr) !important;
  align-content: center !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-copy small {
  margin-top: 7px !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-recipe-actions button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-potion-preview button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card button,
.orgw-modal.is-farmhouse-kitchen .orgw-animal-pen-launch button,
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-section-heading button {
  min-height: 58px !important;
  padding: 8px 14px !important;
  line-height: 1 !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-farmhouse-animal-card {
  min-height: 300px !important;
  grid-template-rows: 110px auto auto auto 58px !important;
}
.orgw-modal.is-farmhouse-kitchen .orgw-animal-pen-launch {
  grid-template-columns: minmax(220px,.75fr) minmax(280px,1.25fr) auto !important;
}

/* Character Needs: every visible label, explanation and inventory action is >=22px. */
.orgw-modal.is-character-needs .orgw-modal-card {
  width: min(980px, 92vw) !important;
  max-height: 90vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
.orgw-modal.is-character-needs .orgw-modal-card > p,
.orgw-modal.is-character-needs .orgw-needs-grid strong,
.orgw-modal.is-character-needs .orgw-needs-grid span,
.orgw-modal.is-character-needs .orgw-needs-bonuses li,
.orgw-modal.is-character-needs .orgw-inventory-row strong,
.orgw-modal.is-character-needs .orgw-inventory-row span,
.orgw-modal.is-character-needs .orgw-inventory-row button,
.orgw-modal.is-character-needs .orgw-storage-empty {
  font-size: 22px !important;
}
.orgw-modal.is-character-needs .orgw-modal-card > p,
.orgw-modal.is-character-needs .orgw-needs-grid span,
.orgw-modal.is-character-needs .orgw-needs-bonuses li,
.orgw-modal.is-character-needs .orgw-inventory-row span {
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-modal.is-character-needs .orgw-needs-grid section {
  min-height: 138px !important;
  align-content: center !important;
}
.orgw-modal.is-character-needs .orgw-needs-bonuses {
  padding: 16px 20px 16px 42px !important;
}
.orgw-modal.is-character-needs .orgw-inventory-row {
  min-height: 92px !important;
}
.orgw-modal.is-character-needs .orgw-inventory-row button {
  min-height: 54px !important;
  line-height: 1 !important;
}

/* ORG World 0.1.99 — Food Storage browser with 24px typography floor. */
.orgw-modal.is-food-storage {
  padding: 1.4% !important;
  background: rgba(13, 22, 20, 0.5) !important;
}
.orgw-modal.is-food-storage .orgw-modal-backdrop {
  background: rgba(11, 18, 18, 0.64) !important;
  backdrop-filter: blur(2px);
}
.orgw-modal.is-food-storage .orgw-modal-card {
  width: min(1720px, 97vw) !important;
  height: min(950px, 95vh) !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 3px solid rgba(153, 105, 49, 0.78) !important;
  border-radius: 30px !important;
  background: linear-gradient(180deg, #fffaf0 0%, #f6ecd7 100%) !important;
  box-shadow: 0 34px 90px rgba(19, 12, 4, 0.5), inset 0 1px 0 rgba(255,255,255,.85) !important;
}
.orgw-modal.is-food-storage [data-modal-content] {
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}
[data-org-world] .orgw-modal.is-food-storage button.orgw-modal-close,
[data-org-world] .orgw-modal.is-food-storage button.orgw-modal-close:hover,
[data-org-world] .orgw-modal.is-food-storage button.orgw-modal-close:focus,
[data-org-world] .orgw-modal.is-food-storage button.orgw-modal-close:active {
  top: 20px !important;
  right: 22px !important;
  width: 66px !important;
  height: 66px !important;
  z-index: 30 !important;
  font-size: 38px !important;
  border-radius: 50% !important;
}
.orgw-storage-browser {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: 218px 66px 94px 42px minmax(0, 1fr) 58px;
  gap: 8px;
  padding: 12px 28px 16px;
  color: #4d3318;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.82), transparent 39%),
    linear-gradient(180deg, rgba(255,250,239,.98), rgba(244,232,208,.98));
}
.orgw-storage-browser-header {
  position: relative;
  min-height: 0;
  display: grid;
  place-items: center;
  overflow: visible;
}
.orgw-storage-title-banner {
  width: min(920px, 66vw);
  height: 100%;
  background: url('../images/food-storage-title-banner.webp') center / contain no-repeat;
  filter: drop-shadow(0 14px 18px rgba(80, 52, 20, 0.15));
}
.orgw-storage-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  border-bottom: 2px solid rgba(137, 91, 35, 0.22);
  border-radius: 18px 18px 0 0;
  overflow: hidden;
  background: rgba(255, 251, 241, 0.78);
}
[data-org-world] .orgw-storage-tabs button,
[data-org-world] .orgw-storage-tabs button:hover,
[data-org-world] .orgw-storage-tabs button:focus,
[data-org-world] .orgw-storage-tabs button:active {
  min-width: 0 !important;
  min-height: 64px !important;
  padding: 8px 12px !important;
  border: 0 !important;
  border-right: 1px solid rgba(137,91,35,.18) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #684720 !important;
  font-size: 24px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  box-shadow: none !important;
}
[data-org-world] .orgw-storage-tabs button:last-child { border-right: 0 !important; }
[data-org-world] .orgw-storage-tabs button span {
  display: inline-block;
  margin-right: 9px;
  font-size: 27px;
  vertical-align: middle;
}
[data-org-world] .orgw-storage-tabs button.is-active {
  background: linear-gradient(180deg, #7cab40, #4f7e27) !important;
  color: #fffaf0 !important;
  text-shadow: 0 2px 2px rgba(38,60,17,.5) !important;
}
.orgw-storage-overview {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(300px, 1.4fr) minmax(210px, .8fr) minmax(210px, .8fr) minmax(170px, .62fr) minmax(190px, .72fr);
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border: 1px solid rgba(139, 94, 38, 0.2);
  border-radius: 20px;
  background: rgba(255, 252, 245, 0.9);
  box-shadow: 0 10px 24px rgba(75, 49, 18, 0.08);
}
.orgw-storage-total,
.orgw-storage-need {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}
.orgw-storage-total > span,
.orgw-storage-need > span {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: #f4dfb7;
  font-size: 30px;
}
.orgw-storage-need > span.is-hunger { background: #f3c486; }
.orgw-storage-need > span.is-thirst { background: #b9dcf5; }
.orgw-storage-total div,
.orgw-storage-need div { min-width: 0; width: 100%; }
.orgw-storage-total strong,
.orgw-storage-total small,
.orgw-storage-need strong {
  display: block;
  font-size: 24px !important;
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.orgw-storage-total strong { font-size: 30px !important; }
.orgw-storage-total small { margin-top: 3px; color: #715333; }
.orgw-storage-need i {
  display: block;
  width: 100%;
  height: 12px;
  margin-top: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #ddd5c6;
  box-shadow: inset 0 1px 3px rgba(65,45,22,.18);
}
.orgw-storage-need i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #e28b32, #f1b247);
}
.orgw-storage-need:nth-of-type(3) i b { background: linear-gradient(90deg, #3294ce, #61b7e8); }
[data-org-world] .orgw-storage-overview > button,
[data-org-world] .orgw-storage-overview > button:hover,
[data-org-world] .orgw-storage-overview > button:focus,
[data-org-world] .orgw-storage-overview > button:active {
  min-width: 0 !important;
  min-height: 58px !important;
  padding: 8px 12px !important;
  border-radius: 16px !important;
  font-size: 24px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: normal !important;
}
.orgw-storage-carousel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 82px;
}
.orgw-storage-carousel-heading h3,
.orgw-storage-carousel-heading span {
  margin: 0 !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
.orgw-storage-carousel-heading h3 { font-size: 30px !important; }
.orgw-storage-carousel {
  min-height: 0;
  position: relative;
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr) 68px;
  align-items: stretch;
  gap: 12px;
  touch-action: pan-y;
  user-select: none;
}
.orgw-storage-card-grid {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}
.orgw-storage-card-grid.is-count-1 { grid-template-columns: minmax(330px, 420px); justify-content: center; }
.orgw-storage-card-grid.is-count-2 { grid-template-columns: repeat(2, minmax(330px, 420px)); justify-content: center; }
.orgw-storage-card-grid.is-count-3 { grid-template-columns: repeat(3, minmax(300px, 390px)); justify-content: center; }
.orgw-storage-browser-card {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(150px, 1fr) minmax(58px, auto) auto auto 64px;
  align-items: center;
  gap: 5px;
  padding: 14px 14px 16px;
  overflow: hidden;
  border: 2px solid rgba(178, 128, 67, 0.28);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,242,226,.98));
  box-shadow: 0 14px 28px rgba(72, 47, 18, 0.12), inset 0 1px 0 rgba(255,255,255,.9);
  text-align: center;
}
.orgw-storage-card-art {
  min-height: 0;
  height: 100%;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.orgw-storage-card-art img {
  display: block;
  width: min(88%, 250px);
  height: min(100%, 210px);
  object-fit: contain;
  filter: drop-shadow(0 10px 8px rgba(65,43,18,.13));
  pointer-events: none;
}
.orgw-storage-card-glyph {
  display: grid;
  place-items: center;
  width: 160px;
  height: 160px;
  font-size: 108px;
}
.orgw-storage-browser-card > strong,
.orgw-storage-browser-card > span,
.orgw-storage-browser-card > small {
  display: block;
  min-width: 0;
  margin: 0;
  color: #4d3318;
  font-size: 24px !important;
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
}
.orgw-storage-browser-card > strong {
  font-size: 30px !important;
  font-weight: 900;
}
.orgw-storage-browser-card > span { color: #715333; }
.orgw-storage-browser-card > small { color: #7b5b34; }
.orgw-storage-card-actions {
  min-width: 0;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
}
[data-org-world] .orgw-storage-card-actions button,
[data-org-world] .orgw-storage-card-actions button:hover,
[data-org-world] .orgw-storage-card-actions button:focus,
[data-org-world] .orgw-storage-card-actions button:active {
  min-width: 0 !important;
  min-height: 60px !important;
  padding: 8px 10px !important;
  border-radius: 14px !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
[data-org-world] .orgw-storage-card-actions button[disabled] { opacity: .58 !important; }
[data-org-world] button.orgw-storage-arrow,
[data-org-world] button.orgw-storage-arrow:hover,
[data-org-world] button.orgw-storage-arrow:focus,
[data-org-world] button.orgw-storage-arrow:active {
  align-self: center;
  width: 64px !important;
  height: 64px !important;
  padding: 0 !important;
  border: 2px solid #b78743 !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, #fff4da, #e9cc91) !important;
  color: #603f1b !important;
  font-size: 48px !important;
  font-weight: 900 !important;
  line-height: .8 !important;
  box-shadow: 0 10px 18px rgba(79,52,20,.18) !important;
}
[data-org-world] button.orgw-storage-arrow[disabled] { opacity: .28 !important; }
.orgw-storage-browser-empty {
  grid-column: 1 / -1;
  align-self: center;
  justify-self: center;
  width: min(720px, 80%);
  padding: 32px;
  border: 2px dashed rgba(137,91,35,.3);
  border-radius: 24px;
  background: rgba(255,252,244,.9);
  text-align: center;
}
.orgw-storage-browser-empty strong,
.orgw-storage-browser-empty span {
  display: block;
  font-size: 24px !important;
  line-height: 1.18 !important;
}
.orgw-storage-browser-empty strong { margin-bottom: 8px; font-size: 30px !important; }
.orgw-storage-browser-footer {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  min-width: 0;
}
.orgw-storage-page-dots {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
[data-org-world] .orgw-storage-page-dots button,
[data-org-world] .orgw-storage-page-dots button:hover,
[data-org-world] .orgw-storage-page-dots button:focus,
[data-org-world] .orgw-storage-page-dots button:active {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  padding: 0 !important;
  border: 2px solid #8a673a !important;
  border-radius: 50% !important;
  background: #e7d5af !important;
  box-shadow: none !important;
}
[data-org-world] .orgw-storage-page-dots button.is-active { background: #6f9e35 !important; }
.orgw-storage-browser-footer p {
  grid-column: 3;
  justify-self: end;
  margin: 0 !important;
  color: #6e5131 !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  text-align: right;
}

@media (max-width: 1180px) {
  .orgw-storage-overview {
    grid-template-columns: 1.2fr .8fr .8fr;
  }
  .orgw-storage-overview > button { display: none !important; }
  .orgw-storage-title-banner { width: min(760px, 72vw); }
}


/* ORG World 0.2.00 — larger Food Storage and polished Settings, Travel and Field Upgrade popups. */
.orgw-modal.is-food-storage .orgw-modal-card{width:94%!important;height:94%!important;max-width:none!important;max-height:none!important}
.orgw-modal.is-food-storage .orgw-storage-browser{grid-template-rows:minmax(150px,21%) 76px 106px 50px minmax(0,1fr) 64px!important;padding:14px 30px 18px!important}
.orgw-modal.is-food-storage .orgw-storage-title-banner{width:min(1040px,72%)!important}
.orgw-modal.is-settings,.orgw-modal.is-dock-panel,.orgw-modal.is-field-upgrade{padding:1.2%!important;background:rgba(11,18,18,.52)!important}
.orgw-modal.is-settings .orgw-modal-backdrop,.orgw-modal.is-dock-panel .orgw-modal-backdrop,.orgw-modal.is-field-upgrade .orgw-modal-backdrop{background:rgba(9,15,15,.66)!important;backdrop-filter:blur(2px)}
.orgw-modal.is-settings .orgw-modal-card,.orgw-modal.is-dock-panel .orgw-modal-card,.orgw-modal.is-field-upgrade .orgw-modal-card{padding:0!important;overflow:hidden!important;border:3px solid rgba(175,124,57,.76)!important;border-radius:28px!important;background:linear-gradient(180deg,#fffdf5,#f4e8cf)!important;box-shadow:0 34px 90px rgba(18,11,4,.55),inset 0 1px rgba(255,255,255,.92)!important}
.orgw-modal.is-settings [data-modal-content],.orgw-modal.is-dock-panel [data-modal-content],.orgw-modal.is-field-upgrade [data-modal-content]{width:100%!important;height:100%!important;overflow:hidden!important}
[data-org-world] .orgw-modal.is-settings button.orgw-modal-close,[data-org-world] .orgw-modal.is-dock-panel button.orgw-modal-close,[data-org-world] .orgw-modal.is-field-upgrade button.orgw-modal-close{top:18px!important;right:20px!important;width:62px!important;height:62px!important;z-index:50!important;border-radius:50%!important;font-size:36px!important}
.orgw-polished-popup-header{text-align:center;padding:24px 84px 18px}
.orgw-polished-popup-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 18px;border-radius:999px;background:#f1e3c5;color:#775329;font-size:24px!important;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.orgw-polished-popup-header h2{margin:8px 0 3px!important;color:#4c2d13!important;font:900 48px/1.05 Georgia,serif!important}
.orgw-polished-popup-header>p{margin:0!important;color:#725131!important;font-size:24px!important;line-height:1.3!important}
.orgw-settings-panel-v200{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;color:#4e3118}
.orgw-settings-v200-scroll{min-height:0;overflow-y:auto;padding:0 28px 18px}
.orgw-settings-v200-section{margin-bottom:18px;padding:20px;border:2px solid #dfc18c;border-radius:22px;background:rgba(255,252,244,.96);box-shadow:0 10px 24px rgba(81,49,16,.08)}
.orgw-settings-v200-heading{display:flex;gap:16px;align-items:center;margin-bottom:16px}.orgw-settings-v200-heading>div{min-width:0}
.orgw-settings-v200-heading strong{display:block;color:#533318;font:900 34px/1.05 Georgia,serif!important}.orgw-settings-v200-heading small{display:block;margin-top:5px;color:#725235;font-size:24px!important;line-height:1.3}
.orgw-settings-v200-icon{width:66px;height:66px;flex:0 0 66px;display:grid;place-items:center;border-radius:50%;background:#76a446;font-size:34px;box-shadow:inset 0 2px #fff8,0 4px 10px #0002}.orgw-settings-v200-icon.is-blue{background:#6aa3c8}
.orgw-settings-panel-v200 .orgw-settings-zoom-value{display:block;width:max-content;min-width:190px;margin:0 auto 15px;padding:10px 28px;border:2px solid #dbc092;border-radius:999px;background:#f7ead0;color:#4f7a2d;font-size:46px!important;line-height:1;text-align:center}
.orgw-settings-camera-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
[data-org-world] .orgw-settings-camera-actions button,[data-org-world] .orgw-settings-panel-v200 .orgw-settings-test-buttons button{min-height:58px!important;padding:10px 14px!important;border:2px solid #9d6a2c!important;border-radius:14px!important;background:linear-gradient(180deg,#f8d983,#d99c32)!important;color:#4e2f11!important;font-size:24px!important;font-weight:900!important;line-height:1.1!important;box-shadow:0 5px 12px rgba(86,50,13,.16)!important}
.orgw-settings-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.orgw-settings-tool-card{min-width:0;padding:16px;border:1px solid #e0c79c;border-radius:18px;background:#fffaf0}
.orgw-settings-tool-card>div:first-child{display:grid;grid-template-columns:54px minmax(0,1fr);column-gap:12px;align-items:center}.orgw-settings-tool-icon{grid-row:1/3;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#e6d5b2;font-size:29px}
.orgw-settings-tool-card strong{display:block;color:#56361a;font-size:26px!important;line-height:1.1}.orgw-settings-tool-card small{display:block;color:#74563a;font-size:24px!important;line-height:1.25}
.orgw-settings-tool-card.is-ironport{grid-column:1/-1;background:linear-gradient(145deg,#315c68,#1b3540);border-color:#d4aa50;color:#fff1c9}.orgw-settings-tool-card.is-ironport strong{color:#fff4d6}.orgw-settings-tool-card.is-ironport small{color:#e9e0cc}
.orgw-settings-panel-v200 .orgw-settings-test-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.orgw-settings-tool-card.is-ironport .orgw-settings-test-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}
.orgw-settings-tool-card label{display:grid;gap:6px;margin-top:12px;font-size:24px!important;font-weight:900}.orgw-settings-tool-card select{width:100%;min-height:56px;padding:8px 12px;border:2px solid #d1a246;border-radius:12px;background:#fff8e5;color:#372413;font-size:24px!important;font-weight:800}.orgw-settings-tool-card em{display:block;margin-top:8px;color:#ffe382;font-size:24px!important;font-style:normal;font-weight:900}
.orgw-settings-panel-v200 .orgw-settings-actions{padding:12px 28px;border-top:1px solid #dbc092;background:#f7e7c9}[data-org-world] .orgw-settings-panel-v200 .orgw-settings-actions button{min-width:190px;min-height:58px;font-size:24px!important}.orgw-settings-panel-v200 .orgw-settings-footnote{margin:0!important;padding:0 28px 14px;background:#f7e7c9;color:#6d4e2d!important;font-size:24px!important;text-align:center}
.orgw-dock-panel-v200{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;color:#4e3118}.orgw-dock-panel-v200 .orgw-dock-card-grid{min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0 26px 18px}
.orgw-dock-action-card{min-width:0;display:grid;grid-template-rows:170px auto minmax(76px,1fr) auto;align-items:start;padding:16px;border:2px solid #dfc18c;border-radius:22px;background:rgba(255,252,244,.97);box-shadow:0 10px 24px rgba(81,49,16,.1);text-align:center}.orgw-dock-card-art{height:170px;display:grid;place-items:center;overflow:hidden}.orgw-dock-card-art img{width:100%;height:100%;object-fit:contain}.orgw-dock-card-art span{font-size:92px;line-height:1}
.orgw-dock-action-card h3{margin:4px 0 7px;color:#533318;font:900 30px/1.05 Georgia,serif!important}.orgw-dock-action-card p{margin:0;color:#735335;font-size:24px!important;line-height:1.25}
[data-org-world] .orgw-dock-action-card button{width:100%;min-height:62px;margin-top:12px;padding:10px 12px!important;border:2px solid #497528!important;border-radius:14px!important;background:linear-gradient(180deg,#78a844,#3f7022)!important;color:#fff!important;font-size:24px!important;font-weight:900!important;line-height:1.1!important;box-shadow:0 5px 12px rgba(45,76,22,.2)!important}.orgw-dock-action-card.is-disabled{opacity:.68;filter:saturate(.65)}.orgw-dock-panel-footer{padding:13px 24px;border-top:1px solid #dbc092;background:#f7e7c9;color:#6a4a28;font-size:24px!important;text-align:center}
.orgw-upgrade-panel-v200{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;padding:0 28px 22px;color:#4e3118}.orgw-upgrade-panel-v200 .orgw-polished-popup-header{padding-bottom:8px}.orgw-upgrade-panel-v200 .orgw-polished-popup-header>p{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.orgw-upgrade-panel-v200 .orgw-polished-popup-header>p strong,.orgw-upgrade-panel-v200 .orgw-polished-popup-header>p span{font-size:24px!important}
.orgw-upgrade-effect-v200{display:grid!important;grid-template-columns:150px minmax(0,1fr);gap:22px!important;align-items:center;padding:18px 24px!important;border:2px solid #dfc18c!important;border-radius:22px!important;background:linear-gradient(135deg,#fffaf0,#f4e2bf)!important}.orgw-upgrade-medallion{width:132px;height:132px;display:grid;place-items:center;border:5px solid #c48d34;border-radius:50%;background:radial-gradient(circle,#fffdf4,#efd49c);font-size:62px;box-shadow:inset 0 2px #fff,0 8px 18px #70450f22}.orgw-upgrade-effect-v200 strong{color:#4f7a2c;font-size:24px!important;text-transform:uppercase;letter-spacing:.06em}.orgw-upgrade-effect-v200 b{display:block;margin-top:8px;color:#5a3617;font:900 38px/1.15 Georgia,serif!important}
.orgw-upgrade-requirements-v200{min-height:0;overflow-y:auto;padding:18px 20px;border:2px solid #dfc18c;border-radius:22px;background:#fffaf0}.orgw-upgrade-requirements-v200 h3{margin:0 0 12px;color:#4f7a2c;font-size:28px!important;text-transform:uppercase;letter-spacing:.05em}.orgw-upgrade-panel-v200 .orgw-upgrade-requirements{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.orgw-upgrade-panel-v200 .orgw-upgrade-requirements li{min-height:78px;padding:12px 14px;border-radius:16px}.orgw-upgrade-panel-v200 .orgw-upgrade-requirements li>span{width:42px;height:42px;font-size:24px}.orgw-upgrade-panel-v200 .orgw-upgrade-requirements li strong,.orgw-upgrade-panel-v200 .orgw-upgrade-requirements li small{font-size:24px!important;line-height:1.15}.orgw-upgrade-footer-v200{display:grid;justify-items:center;gap:8px}[data-org-world] .orgw-upgrade-panel-v200 .orgw-upgrade-confirm{width:min(680px,90%);min-height:68px;font-size:28px!important}.orgw-upgrade-panel-v200 .orgw-upgrade-ready-note,.orgw-upgrade-panel-v200 .orgw-upgrade-missing-note{margin:0!important;font-size:24px!important;line-height:1.25}.orgw-upgrade-complete-v200{display:grid!important;grid-template-columns:150px minmax(0,1fr);gap:22px!important;align-items:center;padding:24px!important}.orgw-upgrade-complete-v200 strong{font-size:32px!important}.orgw-upgrade-complete-v200 span{font-size:24px!important}
@media(max-width:1100px){.orgw-settings-camera-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.orgw-settings-tool-grid{grid-template-columns:1fr}.orgw-settings-tool-card.is-ironport{grid-column:auto}.orgw-settings-tool-card.is-ironport .orgw-settings-test-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.orgw-dock-panel-v200 .orgw-dock-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto}}

/* ORG World 0.2.01 — Storage Character tab and one-screen 22px-safe layout. */
.orgw-modal.is-food-storage .orgw-storage-browser {
  grid-template-rows: minmax(126px, 18%) 72px 46px minmax(0, 1fr) 46px !important;
  gap: 8px !important;
  padding: 10px 26px 12px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser.is-character-tab {
  grid-template-rows: minmax(126px, 18%) 72px minmax(0, 1fr) !important;
}
.orgw-modal.is-food-storage .orgw-storage-title-banner {
  width: min(900px, 63%) !important;
}
.orgw-modal.is-food-storage .orgw-storage-tabs {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-tabs button,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-tabs button:hover,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-tabs button:focus,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-tabs button:active {
  min-height: 70px !important;
  padding: 7px 9px !important;
  font-size: 22px !important;
  line-height: 1.04 !important;
}
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-tabs button span {
  margin-right: 7px !important;
  font-size: 25px !important;
}
.orgw-modal.is-food-storage .orgw-storage-overview { display: none !important; }
.orgw-modal.is-food-storage .orgw-storage-carousel-heading {
  padding: 0 74px !important;
}
.orgw-modal.is-food-storage .orgw-storage-carousel-heading h3 {
  font-size: 28px !important;
}
.orgw-modal.is-food-storage .orgw-storage-carousel-heading span {
  font-size: 22px !important;
}
.orgw-modal.is-food-storage .orgw-storage-carousel {
  grid-template-columns: 62px minmax(0, 1fr) 62px !important;
  gap: 10px !important;
}
.orgw-modal.is-food-storage .orgw-storage-card-grid {
  gap: 14px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-card {
  grid-template-rows: minmax(126px, 1fr) 42px 30px 30px 58px !important;
  gap: 3px !important;
  padding: 10px 12px 12px !important;
  border-radius: 20px !important;
}
.orgw-modal.is-food-storage .orgw-storage-card-art img {
  width: min(86%, 220px) !important;
  height: min(100%, 190px) !important;
}
.orgw-modal.is-food-storage .orgw-storage-card-glyph {
  width: 132px !important;
  height: 132px !important;
  font-size: 88px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-card > strong {
  font-size: 28px !important;
  line-height: 1.04 !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-card > span,
.orgw-modal.is-food-storage .orgw-storage-browser-card > small {
  font-size: 22px !important;
  line-height: 1.04 !important;
}
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-card-actions button,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-card-actions button:hover,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-card-actions button:focus,
[data-org-world] .orgw-modal.is-food-storage .orgw-storage-card-actions button:active {
  min-height: 56px !important;
  padding: 7px 8px !important;
  font-size: 22px !important;
}
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-arrow,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-arrow:hover,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-arrow:focus,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-arrow:active {
  width: 58px !important;
  height: 58px !important;
  font-size: 44px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-empty strong {
  font-size: 28px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-empty span,
.orgw-modal.is-food-storage .orgw-storage-browser-footer p {
  font-size: 22px !important;
}
.orgw-modal.is-food-storage .orgw-storage-browser-footer {
  min-height: 42px !important;
}

.orgw-storage-character-panel {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(300px, 0.31fr) minmax(0, 1fr);
  gap: 18px;
  overflow: hidden;
}
.orgw-storage-character-profile,
.orgw-storage-character-content {
  min-width: 0;
  min-height: 0;
  border: 2px solid rgba(178, 128, 67, 0.28);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,242,226,.98));
  box-shadow: 0 14px 28px rgba(72, 47, 18, 0.1), inset 0 1px 0 rgba(255,255,255,.9);
}
.orgw-storage-character-profile {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto auto;
  justify-items: center;
  gap: 5px;
  padding: 10px 14px 14px;
  overflow: hidden;
  text-align: center;
}
.orgw-storage-character-sprite {
  width: min(230px, 78%);
  height: 100%;
  min-height: 250px;
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 600% 100%;
  filter: drop-shadow(0 13px 10px rgba(55, 35, 14, .22));
  animation: orgw-storage-character-idle 3.6s steps(1, end) infinite;
}
@keyframes orgw-storage-character-idle {
  0%, 15% { background-position: 0 100%; }
  16%, 31% { background-position: 20% 100%; }
  32%, 47% { background-position: 40% 100%; }
  48%, 63% { background-position: 60% 100%; }
  64%, 79% { background-position: 80% 100%; }
  80%, 100% { background-position: 100% 100%; }
}
.orgw-storage-character-profile > div:nth-child(2) strong,
.orgw-storage-character-profile > div:nth-child(2) span {
  display: block;
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-storage-character-profile > div:nth-child(2) strong {
  color: #4d3318;
  font: 900 34px/1 Georgia, serif !important;
}
.orgw-storage-character-profile > div:nth-child(2) span {
  margin-top: 4px;
  color: #735437;
}
.orgw-storage-care-badge {
  width: 100%;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  column-gap: 9px;
  align-items: center;
  padding: 10px 12px;
  border: 2px solid #d8bd8b;
  border-radius: 16px;
  background: #f4e5c8;
  text-align: left;
}
.orgw-storage-care-badge.is-active {
  border-color: #78a841;
  background: linear-gradient(135deg, #eef7d9, #dcecb9);
}
.orgw-storage-care-badge > span {
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #d3a94a;
  color: #fff7d8;
  font-size: 27px !important;
}
.orgw-storage-care-badge strong,
.orgw-storage-care-badge small {
  display: block;
  min-width: 0;
  font-size: 22px !important;
  line-height: 1.08 !important;
  overflow-wrap: anywhere;
}
.orgw-storage-care-badge small { color: #6f5334; }
.orgw-storage-character-content {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 10px;
  padding: 14px;
  overflow: hidden;
}
.orgw-storage-character-needs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.orgw-storage-character-needs article {
  min-width: 0;
  padding: 12px 14px;
  border: 1px solid #dfc394;
  border-radius: 17px;
  background: #fffaf0;
}
.orgw-storage-character-needs article > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.orgw-storage-character-needs article > div span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 13px;
  background: #f3c486;
  font-size: 25px !important;
}
.orgw-storage-character-needs article.is-thirst > div span { background: #b9dcf5; }
.orgw-storage-character-needs strong,
.orgw-storage-character-needs small {
  display: block;
  font-size: 22px !important;
  line-height: 1.08 !important;
  overflow-wrap: anywhere;
}
.orgw-storage-character-needs strong { font-size: 28px !important; }
.orgw-storage-character-needs small { margin-top: 7px; color: #705238; }
.orgw-storage-character-needs i {
  display: block;
  width: 100%;
  height: 14px;
  margin-top: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #ddd5c6;
  box-shadow: inset 0 1px 3px rgba(65,45,22,.18);
}
.orgw-storage-character-needs i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #e28b32, #f1b247);
}
.orgw-storage-character-needs article.is-thirst i b {
  background: linear-gradient(90deg, #3294ce, #61b7e8);
}
.orgw-storage-character-toolbar {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}
.orgw-storage-character-toolbar strong,
.orgw-storage-character-toolbar span {
  display: block;
  font-size: 22px !important;
  line-height: 1.08 !important;
}
.orgw-storage-character-toolbar strong { font-size: 28px !important; }
.orgw-storage-character-toolbar span { margin-top: 3px; color: #705238; }
.orgw-storage-character-toolbar > div:last-child {
  display: flex;
  gap: 9px;
}
[data-org-world] .orgw-storage-character-toolbar button,
[data-org-world] .orgw-storage-character-toolbar button:hover,
[data-org-world] .orgw-storage-character-toolbar button:focus,
[data-org-world] .orgw-storage-character-toolbar button:active,
[data-org-world] .orgw-storage-character-empty button,
[data-org-world] .orgw-storage-character-empty button:hover,
[data-org-world] .orgw-storage-character-empty button:focus,
[data-org-world] .orgw-storage-character-empty button:active {
  min-height: 50px !important;
  padding: 7px 15px !important;
  border-radius: 14px !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}
.orgw-storage-character-items {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-rows: minmax(94px, 1fr);
  gap: 9px;
  overflow: hidden;
}
[data-org-world] button.orgw-storage-character-item,
[data-org-world] button.orgw-storage-character-item:hover,
[data-org-world] button.orgw-storage-character-item:focus,
[data-org-world] button.orgw-storage-character-item:active {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px !important;
  overflow: hidden !important;
  border: 2px solid rgba(173, 122, 58, .32) !important;
  border-radius: 15px !important;
  background: #fffaf0 !important;
  color: #4d3318 !important;
  box-shadow: 0 6px 12px rgba(72,47,18,.08) !important;
  text-align: left !important;
}
[data-org-world] button.orgw-storage-character-item:hover,
[data-org-world] button.orgw-storage-character-item:focus {
  border-color: #6f9d38 !important;
  background: #f2f8df !important;
}
.orgw-storage-character-item img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  filter: drop-shadow(0 5px 5px rgba(65,43,18,.13));
}
.orgw-storage-character-item > span { min-width: 0; }
.orgw-storage-character-item strong,
.orgw-storage-character-item small,
.orgw-storage-character-item em {
  display: block;
  min-width: 0;
  font-size: 22px !important;
  line-height: 1.04 !important;
  font-style: normal;
  white-space: normal;
  overflow-wrap: anywhere;
}
.orgw-storage-character-item strong { font-weight: 900; }
.orgw-storage-character-item small { color: #527d2d; font-weight: 900; }
.orgw-storage-character-item em { color: #74583a; }
.orgw-storage-character-empty {
  grid-column: 1 / -1;
  align-self: center;
  justify-self: center;
  width: min(760px, 86%);
  padding: 22px;
  border: 2px dashed rgba(137,91,35,.3);
  border-radius: 20px;
  background: rgba(255,252,244,.9);
  text-align: center;
}
.orgw-storage-character-empty strong,
.orgw-storage-character-empty span {
  display: block;
  font-size: 22px !important;
  line-height: 1.12 !important;
}
.orgw-storage-character-empty strong { font-size: 28px !important; }
.orgw-storage-character-empty span { margin: 7px 0 12px; }

@media (max-width: 1500px) {
  .orgw-storage-character-panel { grid-template-columns: minmax(280px, .28fr) minmax(0, 1fr); }
  .orgw-storage-character-items { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  [data-org-world] button.orgw-storage-character-item,
  [data-org-world] button.orgw-storage-character-item:hover,
  [data-org-world] button.orgw-storage-character-item:focus,
  [data-org-world] button.orgw-storage-character-item:active { grid-template-columns: 62px minmax(0, 1fr) !important; }
  .orgw-storage-character-item img { width: 58px; height: 58px; }
}
.orgw-modal.is-food-storage .orgw-storage-character-item img { width: 60px; height: 60px; }
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-character-item,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-character-item:hover,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-character-item:focus,
[data-org-world] .orgw-modal.is-food-storage button.orgw-storage-character-item:active { grid-template-columns: 64px minmax(0, 1fr) !important; }


/* ORG World 0.2.02 — live Needs HUD and fully visible Travel and Trade layout. */
.orgw-modal.is-dock-panel .orgw-modal-card {
  width: min(96vw, 1780px) !important;
  height: min(92vh, 920px) !important;
}
.orgw-dock-panel-v200 .orgw-polished-popup-header {
  padding: 14px 84px 10px !important;
}
.orgw-dock-panel-v200 .orgw-polished-popup-kicker {
  min-height: 36px !important;
  padding: 5px 16px !important;
  font-size: 22px !important;
}
.orgw-dock-panel-v200 .orgw-polished-popup-header h2 {
  margin: 5px 0 2px !important;
  font-size: 42px !important;
}
.orgw-dock-panel-v200 .orgw-polished-popup-header > p {
  font-size: 22px !important;
  line-height: 1.15 !important;
}
.orgw-dock-panel-v200 .orgw-dock-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  padding: 0 20px 12px !important;
  overflow: hidden !important;
}
.orgw-dock-panel-v200 .orgw-dock-action-card {
  grid-template-rows: 112px auto minmax(52px, 1fr) auto !important;
  padding: 12px !important;
  border-radius: 18px !important;
}
.orgw-dock-panel-v200 .orgw-dock-card-art {
  height: 112px !important;
}
.orgw-dock-panel-v200 .orgw-dock-card-art span {
  font-size: 70px !important;
}
.orgw-dock-panel-v200 .orgw-dock-action-card h3 {
  margin: 2px 0 5px !important;
  font-size: 26px !important;
}
.orgw-dock-panel-v200 .orgw-dock-action-card p {
  font-size: 22px !important;
  line-height: 1.16 !important;
}
[data-org-world] .orgw-dock-panel-v200 .orgw-dock-action-card button {
  min-height: 54px !important;
  margin-top: 8px !important;
  padding: 8px 9px !important;
  font-size: 22px !important;
}
.orgw-dock-panel-v200 .orgw-dock-panel-footer {
  padding: 9px 22px !important;
  font-size: 22px !important;
}
@media (max-width: 1100px) {
  .orgw-dock-panel-v200 .orgw-dock-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    overflow: hidden !important;
  }
}


/* ORG World 0.2.03 — polished Ironport return voyage panel. */
.orgw-ironport-return-panel .orgw-polished-popup-header {
  padding: 16px 84px 12px !important;
}
.orgw-ironport-return-panel .orgw-polished-popup-kicker {
  min-height: 36px !important;
  padding: 5px 16px !important;
  font-size: 22px !important;
}
.orgw-ironport-return-panel .orgw-polished-popup-header h2 {
  margin: 5px 0 2px !important;
  font-size: 42px !important;
}
.orgw-ironport-return-panel .orgw-polished-popup-header > p {
  font-size: 22px !important;
  line-height: 1.16 !important;
}
.orgw-ironport-return-panel .orgw-ironport-return-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 1240px;
  margin: 0 auto;
  gap: 16px !important;
  padding: 0 20px 14px !important;
  overflow: hidden !important;
}
.orgw-ironport-return-panel .orgw-ironport-return-card {
  grid-template-rows: 120px auto minmax(86px, 1fr) auto !important;
  padding: 14px !important;
  border-radius: 20px !important;
}
.orgw-ironport-return-panel .orgw-dock-card-art {
  height: 120px !important;
}
.orgw-ironport-return-panel .orgw-dock-card-art span {
  font-size: 78px !important;
}
.orgw-ironport-return-panel .orgw-dock-action-card h3 {
  margin: 4px 0 6px !important;
  font-size: 28px !important;
}
.orgw-ironport-return-panel .orgw-dock-action-card p {
  font-size: 22px !important;
  line-height: 1.18 !important;
}
[data-org-world] .orgw-ironport-return-panel .orgw-dock-action-card button {
  min-height: 54px !important;
  margin-top: 10px !important;
  padding: 8px 10px !important;
  font-size: 22px !important;
}
.orgw-ironport-return-panel .orgw-dock-panel-footer {
  padding: 10px 22px !important;
  font-size: 22px !important;
}
@media (max-width: 1100px) {
  .orgw-ironport-return-panel .orgw-ironport-return-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* ORG World 0.2.04 — fixed ORG Village trade-route area. */
.orgw-village-scene{position:absolute;inset:0;overflow:hidden;background:#1f5d73}.orgw-village-background{width:100%;height:100%;object-fit:cover;display:block}.orgw-village-home-sign{position:absolute;left:35%;bottom:5%;width:18%;height:13%;border:0;background:transparent;padding:0;z-index:42;filter:drop-shadow(0 8px 8px rgba(40,23,7,.35));cursor:pointer}.orgw-village-home-sign img{width:100%;height:100%;object-fit:contain}.orgw-village-home-sign b,.orgw-village-hotspot b{position:absolute;right:4%;top:2%;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f3c340;color:#5a2c0d;font-size:24px}.orgw-village-hotspot{position:absolute;border:2px solid rgba(255,220,120,.0);background:transparent;color:transparent;cursor:pointer}.orgw-village-hotspot:hover,.orgw-village-hotspot:focus{border-color:#f6d56a;background:rgba(255,230,120,.12);box-shadow:0 0 0 6px rgba(255,230,120,.12),0 0 30px rgba(255,205,72,.55)}.orgw-village-hotspot.is-fisher{left:5%;bottom:8%;width:34%;height:44%}.orgw-village-hotspot.is-shipyard{right:4%;bottom:7%;width:32%;height:46%}.orgw-village-hotspot.is-missions{left:42%;top:23%;width:20%;height:35%}.orgw-village-return{position:absolute;right:2%;top:12%;min-width:190px;min-height:60px;border:3px solid #d8a83e;border-radius:18px;background:linear-gradient(#ffe49a,#c88d22);color:#59300d;font-size:24px;font-weight:900;box-shadow:0 8px 18px rgba(20,10,0,.3)}.orgw-village-area-title{position:absolute;left:50%;top:12%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;padding:8px 26px;border-radius:18px;background:rgba(255,248,225,.92);border:2px solid #d5aa58;color:#533318;box-shadow:0 8px 20px rgba(30,15,0,.18)}.orgw-village-area-title strong{font-size:30px}.orgw-village-area-title span{font-size:24px}.orgw-village-shop-grid{position:absolute;left:23%;right:3%;bottom:5%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.orgw-village-shop-stage .orgw-bram-live-bg{filter:brightness(.56) saturate(.8)}.orgw-village-shop-stage .orgw-bram-live-panel{width:31%}.orgw-village-mission-requirement{display:grid;gap:8px;margin:18px 0;padding:16px 20px;border:2px solid #d9bd86;border-radius:16px;background:#fff8e8}.orgw-village-mission-requirement strong,.orgw-village-mission-requirement span{font-size:24px!important}
