.minsu-entry { cursor: pointer; }
.minsu-shell { min-height: 100vh; }
.minsu-home { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; max-width: 1280px; margin: 0 auto; padding: 34px clamp(18px, 4vw, 58px) 70px; }
.minsu-hero { min-height: 430px; border-radius: 34px; padding: clamp(30px, 4vw, 56px); color: #f8f1dd; background: radial-gradient(circle at 78% 25%, rgba(199, 160, 69, .25), transparent 28%), linear-gradient(135deg, #123d50, #195a58); display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 18px; box-shadow: 0 14px 0 rgba(112, 84, 31, .13); position: relative; overflow: hidden; }
.minsu-hero-copy { position: relative; z-index: 4; }
.minsu-hero h1 { margin: 18px 0; font: 700 clamp(34px, 4.8vw, 67px)/1.2 STKaiti, KaiTi, serif; }
.minsu-hero h1 em { color: #f1c25d; display: block; font-style: normal; }
.minsu-hero p { max-width: 780px; font-size: clamp(17px, 1.6vw, 23px); line-height: 1.75; }
.minsu-hero small { display: block; margin-top: 18px; color: #d5e1d9; }
.minsu-hero .minsu-living-tree { width: 118%; justify-self: center; transform: translateX(4%); }
.minsu-hero .tree-meter { width: min(38%, 340px); }
.minsu-home > .pet-card, .minsu-home > .data-card { align-self: stretch; }
.minsu-home > .pet-card { grid-column: 2; grid-row: 1; }
.minsu-home > .minsu-map { grid-column: 1; grid-row: 2; }
.minsu-home > .data-card { grid-column: 2; grid-row: 2; }
.minsu-subject-mark { width: min(260px, 80%); aspect-ratio: 1; justify-self: center; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; display: grid; place-items: center; align-content: center; background: rgba(255,255,255,.08); box-shadow: inset 0 0 55px rgba(255,255,255,.08); }
.minsu-subject-mark b { font: 700 clamp(70px, 9vw, 122px)/1 STKaiti, KaiTi, serif; color: #f1c25d; }
.minsu-subject-mark span, .minsu-subject-mark small { margin: 4px 0 0; }
.minsu-map { border: 1px solid var(--line); border-radius: 28px; background: rgba(255,252,245,.9); padding: clamp(18px, 3vw, 34px); }
.minsu-level-list { display: grid; gap: 12px; margin-top: 18px; max-height: 760px; overflow: auto; padding-right: 6px; }
.minsu-level { width: 100%; border: 1px solid #ded3bf; background: #fffdf8; border-radius: 18px; padding: 16px; display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 14px; color: var(--ink); text-align: left; }
.minsu-level > span { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #edf6ee; color: #14735d; font-weight: 800; }
.minsu-level b { display: block; font-size: 17px; }
.minsu-level small { display: block; margin-top: 5px; color: #6f7f83; }
.minsu-level em { color: #14735d; font-style: normal; font-weight: 700; }
.minsu-level.active { border: 2px solid #26906e; background: #edf8f1; }
.minsu-level.done > span { background: #f4df9e; }
.minsu-level.locked { opacity: .56; cursor: default; }
.minsu-focus { max-width: 1040px; margin: 0 auto; }
.minsu-memory { min-height: 400px; }
.minsu-options { display: grid; gap: 12px; }
.minsu-options button { padding: 18px; border: 1px solid #d9cfbd; border-radius: 16px; background: #fff; color: var(--ink); font-size: 17px; text-align: left; }
.minsu-options button.selected { border: 2px solid #26906e; background: #edf8f1; color: #106c55; }
.minsu-classify { display: grid; gap: 18px; }
.classify-pool { min-height: 150px; border-radius: 18px; padding: 18px; background: #f4eee1; display: flex; flex-wrap: wrap; gap: 10px; align-content: flex-start; }
.classify-pool > b { width: 100%; }
.classify-pool button { border: 1px solid #d9cfbd; background: #fff; border-radius: 14px; padding: 13px 16px; font-size: 16px; color: var(--ink); cursor: grab; }
.classify-pool button.placed { opacity: .32; }
.classify-pool button.selected { border: 2px solid #26906e; background: #edf8f1; color: #106c55; }
.classify-targets { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.classify-targets > button { min-height: 190px; border: 2px dashed #86b9a3; background: #eef8f2; border-radius: 20px; padding: 18px; color: var(--ink); text-align: left; }
.classify-targets b { display: block; font-size: 20px; margin-bottom: 12px; }
.classify-targets span { display: block; width: fit-content; margin: 8px 0; border: 1px solid #d9cfbd; border-radius: 12px; padding: 10px 12px; background: #fff; }
.minsu-classify > small { color: #738288; text-align: center; }
.minsu-shell .result-icon { width: 84px; height: 84px; margin: 0 auto 12px; }
.minsu-shell .next-reward { max-width: 420px; margin: 18px auto 0; }
.minsu-shell .habitat-panel .primary { width: 100%; }
.minsu-shell .feed-countdown { display: inline-flex; align-items: center; }

@media (max-width: 900px) {
  .minsu-home { grid-template-columns: 1fr; }
  .minsu-home > .pet-card, .minsu-home > .minsu-map, .minsu-home > .data-card { grid-column: 1; grid-row: auto; }
  .minsu-home > .minsu-map { order: 2; }
  .minsu-home > .pet-card { order: 3; }
  .minsu-home > .data-card { order: 4; }
}

@media (max-width: 720px) {
  .minsu-topbar .brand small { display: none; }
  .minsu-home { padding: 14px 14px 50px; }
  .minsu-hero { min-height: 520px; grid-template-columns: 1fr; padding: 28px 24px 74px; }
  .minsu-hero .minsu-living-tree { width: 116%; height: 260px; margin-top: -20px; transform: none; }
  .minsu-hero .tree-meter { width: auto; left: 8%; right: 8%; bottom: 18px; }
  .minsu-subject-mark { display: none; }
  .minsu-hero h1 { font-size: 38px; }
  .minsu-level { grid-template-columns: 42px 1fr; padding: 13px; }
  .minsu-level em { display: none; }
  .minsu-level b { font-size: 15px; }
  .minsu-level-list { max-height: none; }
  .classify-targets { grid-template-columns: 1fr; }
  .classify-targets > button { min-height: 150px; }
}
