.production-activities { min-width: 0; }
.activity-status-line { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-top: 16px; color: var(--gold-light); }
.activity-tabs { display: flex; flex-wrap: wrap; gap: 9px; margin-block: 20px; }
.activity-tabs button { min-height: 44px; padding: 9px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--muted); font: inherit; font-size: 14px; }
.activity-tabs button.active { border-color: var(--gold-dark); background: #b58a3b25; color: var(--gold-light); }
.activity-lobby { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.activity-lobby-item { display: grid; gap: 12px; justify-items: start; align-content: center; min-height: 180px; padding: 24px; border: 1px solid #8b704a66; border-radius: 20px; background: radial-gradient(circle at 80% 0,#8b704a22,transparent 60%),linear-gradient(135deg,#1b2c45,#0d192b); color: var(--text); text-align: start; font: inherit; }
.activity-lobby-item strong { font-size: 19px; }
.activity-lobby-item small { color: var(--muted); font-size: 13px; }
.activity-glyph { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid #b58a3b66; border-radius: 15px; background: #b58a3b18; color: var(--gold-light); font-size: 30px; }
.activity-game { text-align: center; }
.activity-game h2 { font-size: 24px; }
.activity-game > p { margin-top: 16px; }
.activity-game > .button { margin-top: 20px; }
.activity-chances { font-size: 18px; }
.production-activities .activity-wheel-card { overflow: hidden; background: radial-gradient(ellipse at 50% 35%,#b58a3b16,transparent 65%),var(--card,#0e1c30); }
.production-activities .activity-wheel-hint { max-width: 36ch; margin: 10px auto 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.production-activities .activity-wheel-stage { position: relative; width: min(340px,100%); margin: 30px auto 4px; padding: 8px; }
.production-activities .activity-wheel { position: relative; width: 100%; aspect-ratio: 1; border: 7px solid #b58a3b; border-radius: 50%; background: #111e30; box-shadow: 0 0 0 3px #ffe4a866,0 0 0 8px #b58a3b15,0 20px 36px #0006; }
.production-activities .activity-wheel-rotor { display: block; width: 100%; height: 100%; overflow: visible; transform-origin: 50% 50%; will-change: transform; }
.production-activities .wheel-sector path { stroke: #ffe4a855; stroke-width: 1; }
.production-activities .wheel-amount { font-family: "Segoe UI",Arial,sans-serif; font-weight: 800; font-variant-numeric: tabular-nums; }
.production-activities .wheel-sector.is-winner path { stroke: #fff3cb; stroke-width: 4; }
.production-activities .activity-wheel-pointer { position: absolute; top: -8px; left: 50%; z-index: 3; width: 24px; height: 36px; background: linear-gradient(90deg,#b78c43,#fff0bf 50%,#b78c43); clip-path: polygon(0 0,100% 0,50% 100%); transform: translateX(-50%); filter: drop-shadow(0 3px 3px #0008); }
.production-activities .activity-wheel-hub { position: absolute; left: 50%; top: 50%; display: grid; place-content: center; gap: 5px; width: 25%; aspect-ratio: 1; border: 3px solid #d7b366; border-radius: 50%; transform: translate(-50%,-50%); background: radial-gradient(circle at 35% 25%,#33425b,#0c1626 75%); color: #ffe4a8; box-shadow: 0 4px 14px #0008; font: 800 16px/1 "Segoe UI",sans-serif; }
.production-activities .activity-wheel-hub small { font-size: 9px; letter-spacing: 2px; }
.production-activities .activity-wheel-status { min-height: 1.8em; margin: 10px 0 0; color: var(--gold-light,#ffe4a8); font-size: 14px; }
.production-activities .activity-wheel-accessible { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.activity-rounds .selected { border-color: var(--gold-dark); background: #b58a3b20; color: var(--gold-light); }
.activity-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; width: min(600px,100%); margin: 24px auto; }
.activity-flip-card { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 12px; min-height: 160px; padding: 17px 10px; border: 1px solid #ad8a4d; border-radius: 18px; background: repeating-linear-gradient(135deg,#1b2c44 0 12px,#17263c 12px 24px); color: #ffe1a0; font: inherit; }
.activity-flip-card > bdi { font-size: 15px; align-self: flex-start; }
.activity-flip-card > span { margin: auto; font: 700 37px/1 "Segoe UI",sans-serif; }
.activity-flip-card.revealed { border-color: #ffe1a0; background: linear-gradient(145deg,#4f4024,#182b42); }
.activity-flip-card .numeric { font-size: 20px; }
.activity-flip-card:disabled { opacity: .7; }
.activity-scratch { display: grid; justify-items: center; gap: 12px; padding: 30px 18px; margin-top: 20px; border: 2px dashed #a48b5c; border-radius: 20px; background: repeating-linear-gradient(45deg,#3c4658 0 8px,#303e52 8px 16px); }
.activity-scratch > span { font-size: 58px; color: #cbd7e8; }
.activity-scratch.revealed { border-style: solid; background: #b58a3b18; color: var(--gold-light); }
.activity-scratch .numeric { font-size: 27px; }
.activity-treasure { display: grid; place-items: center; width: 110px; height: 90px; margin: 25px auto; border: 3px solid #dfb667; border-radius: 18px; background: linear-gradient(#786035,#322b21); color: #ffe1a0; font-size: 68px; line-height: 1; }
.activity-rounds { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 25px; text-align: start; }
.activity-rounds > div { display: grid; gap: 8px; padding: 15px; border: 1px solid var(--line); border-radius: 12px; }
.activity-rounds span,.activity-rounds small { color: var(--muted); font-size: 12px; }
.activity-result { display: grid; gap: 10px; padding: 18px; margin-block: 18px; border: 1px solid #bd985d66; border-radius: 14px; background: #b58a3b12; color: var(--gold-light); overflow-wrap: anywhere; }
.activity-result p { line-height: 1.8; }
.activity-uncertain { display: grid; gap: 12px; }
.activity-uncertain .button { width: fit-content; }
.production-activities form { display: grid; gap: 18px; margin-top: 20px; }
.production-activities .input { font-size: 16px; }
.activity-purchases { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 18px; }
.activity-purchases header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; }
.activity-main-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.activity-records { display: grid; gap: 12px; margin-top: 20px; }
.activity-records article { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px 20px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.activity-records small { flex-basis: 100%; color: var(--muted); }
.activity-history > summary { min-height: 48px; padding: 12px 0; color: var(--gold-light); cursor: pointer; }
@media(max-width:1023px){
  .activity-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 7px; scrollbar-width: thin; scroll-padding-inline: 12px; }
  .activity-tabs button { flex: 0 0 auto; min-height: 46px; font-size: 15px; }
  .activity-status-line { align-items: stretch; flex-direction: column; font-size: 16px; }
  .activity-status-line > .button { min-height: 48px; }
  .activity-lobby { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .activity-lobby-item { min-height: 166px; padding: 18px; gap: 12px; }
  .activity-lobby-item strong { font-size: 17px; line-height: 1.65; }
  .activity-lobby-item small { font-size: 12px; }
  .activity-game { padding: 20px 17px; }
  .activity-game > .button,.production-activities form > .button,.activity-uncertain .button,.activity-purchases .button { width: 100%; min-height: 50px; font-size: 16px; }
  .production-activities .activity-wheel-stage { width: min(320px,100%); }
  .activity-card-grid { gap: 10px; }
  .activity-flip-card { min-height: 132px; padding: 13px 8px; border-radius: 14px; }
  .activity-flip-card > span { font-size: 30px; }
  .activity-flip-card .numeric { font-size: 15px; overflow-wrap: anywhere; }
  .activity-flip-card .numeric small { font-size: 9px; }
  .activity-rounds { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .activity-rounds > div { padding: 13px; }
  .activity-rounds small { font-size: 11px; line-height: 1.8; }
  .activity-purchases,.activity-main-actions { grid-template-columns: minmax(0,1fr); }
  .activity-result { padding: 16px; font-size: 16px; }
  .activity-records article { font-size: 16px; }
  .activity-purchase-confirm form { margin-top: 18px; }
}
@media(prefers-reduced-motion:reduce){.production-activities .activity-wheel-rotor{will-change:auto;}}
@media(max-width:359px){
  .activity-lobby-item { padding: 14px; }
  .activity-lobby-item strong { font-size: 16px; }
  .activity-flip-card { min-height: 118px; }
  .activity-flip-card .numeric { font-size: 13px; }
}
