<turbo-stream action="replace" target="calendar-navigation"><template>
  <div id="calendar-navigation" class="flex items-center justify-between h-14 py-2">
    <!-- Previous Month Button with ripple effect -->
    <a id="prev-month-button" data-turbo-method="get" data-turbo-stream="true" data-prev-month="true" class="relative overflow-hidden rounded-full p-2.5 bg-white shadow-md hover:shadow-lg active:scale-95 transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-emerald-400 group" href="/calendar/month?date=2026-04-21&amp;member_id=10&amp;team_id=2">
      <div class="absolute inset-0 rounded-full bg-gray-400 opacity-0 group-active:opacity-20 transition-opacity"></div>
      <svg class="w-5 h-5 relative z-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"></path>
      </svg>
</a>
    <!-- Enhanced month display -->
    <div class="flex flex-col items-center">
      <h1 id="calendar-month-year" class="text-lg font-semibold text-gray-900">
        2026년 5월
      </h1>
      <p id="calendar-week-range" class="text-xs text-gray-500 mt-0.5">
        05월 17일 - 05월 23일
      </p>
    </div>

    <!-- Next Month Button with ripple effect -->
    <a id="next-month-button" data-turbo-method="get" data-turbo-stream="true" data-next-month="true" class="relative overflow-hidden rounded-full p-2.5 bg-white shadow-md hover:shadow-lg active:scale-95 transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-emerald-400 group" href="/calendar/month?date=2026-06-21&amp;member_id=10&amp;team_id=2">
      <div class="absolute inset-0 rounded-full bg-gray-400 opacity-0 group-active:opacity-20 transition-opacity"></div>
      <svg class="w-5 h-5 relative z-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
      </svg>
</a>  </div>
</template></turbo-stream>
<turbo-stream action="replace" target="calendar-frame"><template>
  <turbo-frame class="block" id="calendar-frame">
    <div class="bg-gradient-to-b from-gray-50 to-white rounded-2xl shadow-lg overflow-hidden">
  <!-- Week headers with glass effect -->
  <div class="grid grid-cols-7 bg-white/70 backdrop-blur-md border-b border-gray-100">
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-emerald-500">
          일
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-gray-500">
          월
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-gray-500">
          화
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-gray-500">
          수
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-gray-500">
          목
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-gray-500">
          금
        </span>
      </div>
      <div class="py-1.5 md:py-2 text-center">
        <span class="text-xs sm:text-sm font-bold tracking-wider text-emerald-500">
          토
        </span>
      </div>
  </div>

  <!-- Calendar grid with responsive gaps -->
  <div class="grid grid-cols-7 gap-0.5 sm:gap-1 p-1 sm:p-2 bg-gray-100/50">
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-04-26"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              26
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-04-27"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              27
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-04-28"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              28
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-04-29"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              29
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-04-30"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              30
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-01"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              1
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-02"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              2
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-03"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              3
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-04"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              4
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-05"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              5
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-06"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              6
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-07"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              7
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-08"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              8
            </span>

          <!-- Read indicator -->

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-09"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              9
            </span>

          <!-- Read indicator -->

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-10"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              10
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-11"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              11
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-12"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              12
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-13"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              13
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-14"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              14
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-15"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              15
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-16"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              16
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-17"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              17
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-18"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              18
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-19"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              19
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-20"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              20
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-21"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              21
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-22"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              22
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-23"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              23
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-24"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              24
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-25"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              25
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-26"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              26
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-27"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              27
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-28"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              28
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2026-05-29"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-700">
              29
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-30"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              30
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-emerald-50/30"
           data-date="2026-05-31"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-emerald-600">
              31
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-01"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              1
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-02"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              2
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-03"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              3
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-04"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              4
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-05"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              5
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square bg-gray-50 opacity-40 pointer-events-none"
           data-date="2026-06-06"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

        <div class="relative h-full flex flex-col items-center justify-center p-0.5 sm:p-1">
          <!-- Day number with circle for today -->
            <span class="text-xs sm:text-sm font-medium text-gray-400">
              6
            </span>

          <!-- Read indicator -->
            <div class="reading-indicator absolute top-0.5 right-0.5 sm:top-1 sm:right-1">
              <div class="w-3 h-3 sm:w-3.5 sm:h-3.5 md:w-4 md:h-4 rounded-full bg-green-500 flex items-center justify-center shadow-sm">
                <svg class="w-2 h-2 sm:w-2.5 sm:h-2.5 text-white" fill="currentColor" viewBox="0 0 20 20">
                  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                </svg>
              </div>
            </div>

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
  </div>
</div>
</turbo-frame></template></turbo-stream>
<turbo-stream action="replace" target="weekly-team-matrix"><template>
  <turbo-frame data-current-team-id="2" id="weekly-team-matrix">

  <div class="mt-1 sm:mt-2 bg-white rounded-xl sm:rounded-2xl shadow-lg overflow-hidden">
    <!-- Team Selector Cards + Week Navigation -->
    <div class="p-3 sm:p-4 md:p-5 border-b border-gray-100">
      <!-- Team selector: 2-column grid on mobile, flex-wrap on desktop -->
      <div class="grid grid-cols-2 gap-2 sm:gap-2.5 sm:flex sm:flex-wrap sm:overflow-visible pb-0">

          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="1" data-team-goal-chapters="126" data-team-actual-chapters="126" class="w-full sm:flex-shrink-0 sm:min-w-[150px] sm:flex-1 rounded-xl p-3 sm:p-3.5 transition-all duration-200 active:scale-[0.97] bg-blue-50 text-blue-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-400" href="/calendar/month?date=2026-05-21&amp;team_id=1">
            <div class="flex items-center justify-between mb-1.5 sm:mb-2">
              <span class="text-sm sm:text-base font-bold truncate">토브</span>
              <span data-team-progress-percent="1" class="text-sm sm:text-base font-bold ml-2 text-green-600">
                100%
              </span>
            </div>
            <div class="h-2 sm:h-2.5 w-full rounded-full bg-black/10 overflow-hidden">
              <div data-team-progress-bar="1"
                   data-bar-incomplete-class="bg-gradient-to-r from-blue-500 to-blue-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-green-400 to-green-500"
                   style="width: 100%;">
              </div>
            </div>
              <div data-team-progress-chapters="1" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                126/126 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="2" data-team-goal-chapters="105" data-team-actual-chapters="105" class="w-full sm:flex-shrink-0 sm:min-w-[150px] sm:flex-1 rounded-xl p-3 sm:p-3.5 transition-all duration-200 active:scale-[0.97] bg-emerald-600 text-white shadow-xl shadow-emerald-500/50 border-2 border-emerald-400 shadow-lg shadow-emerald-500/30 ring-2 ring-emerald-400 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-emerald-400" href="/calendar/month?date=2026-05-21&amp;team_id=2">
            <div class="flex items-center justify-between mb-1.5 sm:mb-2">
              <span class="text-sm sm:text-base font-bold truncate">레브</span>
              <span data-team-progress-percent="2" class="text-sm sm:text-base font-bold ml-2 text-green-600">
                100%
              </span>
            </div>
            <div class="h-2 sm:h-2.5 w-full rounded-full bg-black/10 overflow-hidden">
              <div data-team-progress-bar="2"
                   data-bar-incomplete-class="bg-white/80"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-green-400 to-green-500"
                   style="width: 100%;">
              </div>
            </div>
              <div data-team-progress-chapters="2" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                105/105 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="3" data-team-goal-chapters="105" data-team-actual-chapters="15" class="w-full sm:flex-shrink-0 sm:min-w-[150px] sm:flex-1 rounded-xl p-3 sm:p-3.5 transition-all duration-200 active:scale-[0.97] bg-purple-50 text-purple-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-purple-400" href="/calendar/month?date=2026-05-21&amp;team_id=3">
            <div class="flex items-center justify-between mb-1.5 sm:mb-2">
              <span class="text-sm sm:text-base font-bold truncate">데레크</span>
              <span data-team-progress-percent="3" class="text-sm sm:text-base font-bold ml-2 ">
                15%
              </span>
            </div>
            <div class="h-2 sm:h-2.5 w-full rounded-full bg-black/10 overflow-hidden">
              <div data-team-progress-bar="3"
                   data-bar-incomplete-class="bg-gradient-to-r from-purple-500 to-purple-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-purple-500 to-purple-600"
                   style="width: 15%;">
              </div>
            </div>
              <div data-team-progress-chapters="3" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                15/105 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="4" data-team-goal-chapters="105" data-team-actual-chapters="102" class="w-full sm:flex-shrink-0 sm:min-w-[150px] sm:flex-1 rounded-xl p-3 sm:p-3.5 transition-all duration-200 active:scale-[0.97] bg-amber-50 text-amber-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-400" href="/calendar/month?date=2026-05-21&amp;team_id=4">
            <div class="flex items-center justify-between mb-1.5 sm:mb-2">
              <span class="text-sm sm:text-base font-bold truncate">에무나</span>
              <span data-team-progress-percent="4" class="text-sm sm:text-base font-bold ml-2 ">
                98%
              </span>
            </div>
            <div class="h-2 sm:h-2.5 w-full rounded-full bg-black/10 overflow-hidden">
              <div data-team-progress-bar="4"
                   data-bar-incomplete-class="bg-gradient-to-r from-amber-500 to-amber-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-amber-500 to-amber-600"
                   style="width: 98%;">
              </div>
            </div>
              <div data-team-progress-chapters="4" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                102/105 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="5" data-team-goal-chapters="63" data-team-actual-chapters="0" class="w-full sm:flex-shrink-0 sm:min-w-[150px] sm:flex-1 rounded-xl p-3 sm:p-3.5 transition-all duration-200 active:scale-[0.97] bg-rose-50 text-rose-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-rose-400" href="/calendar/month?date=2026-05-21&amp;team_id=5">
            <div class="flex items-center justify-between mb-1.5 sm:mb-2">
              <span class="text-sm sm:text-base font-bold truncate">아로민</span>
              <span data-team-progress-percent="5" class="text-sm sm:text-base font-bold ml-2 ">
                0%
              </span>
            </div>
            <div class="h-2 sm:h-2.5 w-full rounded-full bg-black/10 overflow-hidden">
              <div data-team-progress-bar="5"
                   data-bar-incomplete-class="bg-gradient-to-r from-rose-500 to-rose-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-rose-500 to-rose-600"
                   style="width: 0%;">
              </div>
            </div>
              <div data-team-progress-chapters="5" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                0/63 챕터
              </div>
</a>      </div>

      <!-- Week navigation row -->
      <div class="flex items-center justify-between mt-3 sm:mt-3">
        <a data-turbo-method="get" data-turbo-stream="true" class="flex items-center gap-1 p-2 sm:p-2.5 rounded-lg hover:bg-gray-100 active:bg-gray-200 transition-colors min-h-[44px]" href="/calendar/day?date=2026-05-10&amp;team_id=2">
          <svg class="w-4 h-4 sm:w-5 sm:h-5 text-gray-600" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"></path>
          </svg>
          <span class="text-xs sm:text-sm text-gray-600 font-medium">이전 주</span>
</a>
        <div class="text-xs sm:text-sm font-medium text-gray-700">
          05/17 – 05/23
        </div>

        <a data-turbo-method="get" data-turbo-stream="true" class="flex items-center gap-1 p-2 sm:p-2.5 rounded-lg hover:bg-gray-100 active:bg-gray-200 transition-colors min-h-[44px]" href="/calendar/day?date=2026-05-24&amp;team_id=2">
          <span class="text-xs sm:text-sm text-gray-600 font-medium">다음 주</span>
          <svg class="w-4 h-4 sm:w-5 sm:h-5 text-gray-600" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
          </svg>
</a>      </div>
    </div>

      <!-- Matrix Table -->
      <div class="overflow-x-auto">
        <table class="w-full min-w-[320px]">
          <thead>
            <tr class="bg-gray-50 border-b border-gray-200">
              <th class="px-2 sm:px-3 py-2 text-left text-xs sm:text-sm font-medium text-gray-700 sticky left-0 bg-gray-50 z-10">
                멤버
              </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">일</span>
                    <span class="text-[9px] sm:text-[10px]">17</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">월</span>
                    <span class="text-[9px] sm:text-[10px]">18</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">화</span>
                    <span class="text-[9px] sm:text-[10px]">19</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">수</span>
                    <span class="text-[9px] sm:text-[10px]">20</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">목</span>
                    <span class="text-[9px] sm:text-[10px]">21</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">금</span>
                    <span class="text-[9px] sm:text-[10px]">22</span>
                  </div>
                </th>
                <th class="px-1 sm:px-2 py-2 text-center text-[10px] sm:text-xs font-medium text-gray-600">
                  <div class="flex flex-col items-center">
                    <span class="hidden sm:block">토</span>
                    <span class="text-[9px] sm:text-[10px]">23</span>
                  </div>
                </th>
              <th class="px-2 sm:px-3 py-2 text-center text-xs sm:text-sm font-medium text-gray-700">
                완료
              </th>
            </tr>
          </thead>
          <tbody class="divide-y divide-gray-100">
              <tr class="bg-white hover:bg-emerald-50/30 transition-colors">
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-xs sm:text-sm font-medium text-gray-900 sticky left-0 bg-white z-10">
                  <div class="flex items-center gap-1 h-6 sm:h-7">
                    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-md transition-all duration-150 hover:bg-gray-100 active:scale-95 cursor-pointer" href="/calendar/month?date=2026-05-21&amp;member_id=11&amp;team_id=2">
                      <span>김사무엘</span>
</a>                  </div>
                </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-17" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="2H2arZmi8MhhUjCUKP4_ZJVH_CJmevd73lMHO8S7ka7yxP5xHAhlTEaL4DCstZ_1NTEl7RF7-k-AKoSLb7TwLQ" /><input type="hidden" name="date" value="2026-05-17" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-18" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="fsfbwFOwqD3bK-lv6JgBYm0gOGKlDJoQCd7FpoXB2t5Ufr8c1ho9ufzyOcts06HzzVbhrdINlyRXp0YWLs67XQ" /><input type="hidden" name="date" value="2026-05-18" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-19" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="L8EeVu4uwM5zJe7JYySQrF968CMtHYvaqIp15FTZT2wFeHqKa4RVSlT8Pm3nbzA9_wwp7Fochu728_ZU_9Yu7w" /><input type="hidden" name="date" value="2026-05-19" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-20" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="2PBJYn3ibgUIYshZEXcRvwj_eSaU_fEMfY2zJ74Bk9nySS2--Ej7gS-7GP2VPLEuqImg6eP8_Dgj9DCXFQ7yWg" /><input type="hidden" name="date" value="2026-05-20" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-21" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="EM1RTKhbhLAiLRORwPLiZT4lkuEBwI1NfBOBQmRAHrA6dDWQLfERNAX0wzVEuUL0nlNLLnbBgHkiagLyz09_Mw" /><input type="hidden" name="date" value="2026-05-21" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-22" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="gm0MfVnkUsZMMDBOw1r1rA1pq_Brr6nXW-n6BSQtaBSo1Gih3E7HQmvp4OpHEVU9rR9yPxyupOMFkHm1jyIJlw" /><input type="hidden" name="date" value="2026-05-22" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="11" data-date="2026-05-23" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="mELI5zOY7XwnKsSV9pUzX-GyKqAFWCSfa_R3mIjm9Diy-6w7tjJ4-ADzFDFy3pPOQcTzb3JZKas1jfQoI-mVuw" /><input type="hidden" name="date" value="2026-05-23" /><input type="hidden" name="target_member_id" value="11" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-center">
                  <div class="flex items-center justify-center h-6 sm:h-7">
                    <span data-member-total-for="11"
                          data-member-total="7"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-green-100 text-green-700">
                      7/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-gray-50/50 hover:bg-emerald-50/30 transition-colors">
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-xs sm:text-sm font-medium text-gray-900 sticky left-0 bg-gray-50/50 z-10">
                  <div class="flex items-center gap-1 h-6 sm:h-7">
                    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-md transition-all duration-150 hover:bg-gray-100 active:scale-95 cursor-pointer" href="/calendar/month?date=2026-05-21&amp;member_id=7&amp;team_id=2">
                      <span>김승일</span>
</a>                  </div>
                </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-17" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="TNIAS_0UaVbpTvgqfAB86qYF33Hghdv8TV_gVJ_ljh5ma2SXeL780s6XKI74S9x7BnMGvpeE1sgTJmPkNOrvnQ" /><input type="hidden" name="date" value="2026-05-17" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-18" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="i-U5hIYc5n4b4-9olHeQ9kvCGrfvEbt0Fp3yfmw7_IuhXF1YA7Zz-jw6P8wQPDBn67TDeJgQtkBI5HHOxzSdCA" /><input type="hidden" name="date" value="2026-05-18" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-19" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="d3pGzWPMn3HYozVpMENDRYAktcagLFJqVwxhSbjK5rFdwyIR5mYK9f965c20COPUIFJsCdctX14JdeL5E8WHMg" /><input type="hidden" name="date" value="2026-05-19" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-20" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="ze-AzwxyGXayL5UP-cgp_w9S-WIbVuYmon_F0WThdSznVuQTidiM8pX2Rat9g4luryQgrWxX6xL8BkZhz-4Urw" /><input type="hidden" name="date" value="2026-05-20" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-21" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="0heJBpi0O7vYhELk_6ogZqqvrGBwVYjHeZV-Pdgn_nL4ru3aHR6uP_9dkkB74YD3Ctl1rwdUhfMn7P2Ncyif8Q" /><input type="hidden" name="date" value="2026-05-21" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-22" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="pw9g35r0upLWQqK_nB9nBmh5x0YcCFQqNorTnKJ8K56NtgQDH14vFvGbchsYVMeXyA8eiWsJWR5o81AsCXNKHQ" /><input type="hidden" name="date" value="2026-05-22" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="7" data-date="2026-05-23" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="AKS9GpYJn9ml_Zg6nAzHjzqQeXdICPCaZJ72iEbgkm4qHdnGE6MKXYIkSJ4YR2cemuaguD8J_a4653U47e_z7Q" /><input type="hidden" name="date" value="2026-05-23" /><input type="hidden" name="target_member_id" value="7" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-center">
                  <div class="flex items-center justify-center h-6 sm:h-7">
                    <span data-member-total-for="7"
                          data-member-total="7"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-green-100 text-green-700">
                      7/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-white hover:bg-emerald-50/30 transition-colors">
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-xs sm:text-sm font-medium text-gray-900 sticky left-0 bg-white z-10">
                  <div class="flex items-center gap-1 h-6 sm:h-7">
                    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-md transition-all duration-150 hover:bg-gray-100 active:scale-95 cursor-pointer" href="/calendar/month?date=2026-05-21&amp;member_id=8&amp;team_id=2">
                      <span>김용례</span>
</a>                  </div>
                </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-17" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="KzYww24XwvYUYn-qCXV1OicVENEMo4_WNInRfo-1AOcBj1Qf671XcjO7rw6NPtWrh2PJHnuiguJq8FLOJLphZA" /><input type="hidden" name="date" value="2026-05-17" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-18" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="28DCmwQhkoDTDU5HoUhy7r8NPyle7uiYuq7RC9RdhbHxeaZHgYsHBPTUnuMlA9J_H3vm5inv5azk11K7f1LkMg" /><input type="hidden" name="date" value="2026-05-18" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-19" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="ZnPb54vG59hpgpgcA2qj_AM2c9JMhO3X8DIscKyxt4JMyr87DmxyXE5bSLiHIQNto0CqHTuF4OOuS6_AB77WAQ" /><input type="hidden" name="date" value="2026-05-19" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-20" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="fdjZV4JocmIwCiixqB3RmOCmvUtAXn-M7AzHDUSIOqhXYb2LB8Ln5hfT-BUsVnEJQNBkhDdfcriydUS974dbKw" /><input type="hidden" name="date" value="2026-05-20" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-21" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="vzUgEPIdX-2P3Rilf33xQkmNbzW8UAC_zih8obHvqteVjETMd7fKaagEyAH7NlHT6fu2-stRDYuQUf8RGuDLVA" /><input type="hidden" name="date" value="2026-05-21" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-22" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="2sc3KwYR4hzUsNJkvYXVgGjGZAe1xMM7CIjtXq2spM_wflP3g7t3mPNpAsA5znURyLC9yMLFzg9W8W7uBqPFTA" /><input type="hidden" name="date" value="2026-05-22" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="8" data-date="2026-05-23" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="PEgkBvXNG-2e8xp3FyL9wPt6LSTt34Tp1O36Ko21OOgW8UDacGeOabkqytOTaV1RWwz065reid2KlHmaJrpZaw" /><input type="hidden" name="date" value="2026-05-23" /><input type="hidden" name="target_member_id" value="8" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-center">
                  <div class="flex items-center justify-center h-6 sm:h-7">
                    <span data-member-total-for="8"
                          data-member-total="7"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-green-100 text-green-700">
                      7/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-gray-50/50 hover:bg-emerald-50/30 transition-colors">
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-xs sm:text-sm font-medium text-gray-900 sticky left-0 bg-gray-50/50 z-10">
                  <div class="flex items-center gap-1 h-6 sm:h-7">
                    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-md transition-all duration-150 hover:bg-gray-100 active:scale-95 cursor-pointer" href="/calendar/month?date=2026-05-21&amp;member_id=9&amp;team_id=2">
                      <span>박성심</span>
</a>                  </div>
                </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-17" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="NudjlucGoi1GwnUBFzmMHNLBQdID6mTRQD8TAZ2J2eAcXgdKYqw3qWEbpaWTciyNcreYHXTraeUeRpCxNoa4Yw" /><input type="hidden" name="date" value="2026-05-17" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-18" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="mNHuXf4V-Sr-TPmW3PoHTo_1OAJNs0pQBFJaK9Pxpq-yaIqBe79srtmVKTJYsaffL4PhzTqyR2RaK9mbeP7HLA" /><input type="hidden" name="date" value="2026-05-18" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-19" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="6FOL3sb1ioCBr0agha_bFATW_l9d1u_j4zOMZB7tFtXC6u8CQ18fBKZ2lgQB5HuFpKAnkCrX4te9Sg_UteJ3Vg" /><input type="hidden" name="date" value="2026-05-19" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-20" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="tGQpSpX7xsGrpt-ZuAuRTK-rBcUqCDEGsJhbvUam_Uee3U2WEFFTRYx_Dz08QDHdD93cCl0JPDLu4dgN7amcxA" /><input type="hidden" name="date" value="2026-05-20" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-21" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="zw5Z56cINzELw0JFk1_sO6NiAxbxkjs-Dhk41hj3cnXltz07IqKitSwakuEXFEyqAxTa2YaTNgpQYLtms_gT9g" /><input type="hidden" name="date" value="2026-05-21" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-22" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="T6AIRFxyOG-kTj1lg1T5ucKH5KnuKTNm86EJjbD3CXJlGWyY2dit64OX7cEHH1koYvE9ZpkoPlKt2Io9G_ho8Q" /><input type="hidden" name="date" value="2026-05-22" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="9" data-date="2026-05-23" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="9D6LXFugnJWj13Ec0vkHGdvf-HHHiqIrrzrWlR57Gmveh--A3goJEYQOobhWsqeIe6khvrCLrx_xQ1UltXR76A" /><input type="hidden" name="date" value="2026-05-23" /><input type="hidden" name="target_member_id" value="9" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-center">
                  <div class="flex items-center justify-center h-6 sm:h-7">
                    <span data-member-total-for="9"
                          data-member-total="7"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-green-100 text-green-700">
                      7/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-white hover:bg-emerald-50/30 transition-colors">
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-xs sm:text-sm font-medium text-gray-900 sticky left-0 bg-white z-10">
                  <div class="flex items-center gap-1 h-6 sm:h-7">
                    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-md transition-all duration-150 hover:bg-gray-100 active:scale-95 cursor-pointer bg-emerald-100 text-emerald-700 font-bold ring-1 ring-emerald-400" href="/calendar/month?date=2026-05-21&amp;team_id=2">
                      <span>최다솔</span>
                        <svg class="w-3 h-3 sm:w-3.5 sm:h-3.5 text-emerald-600" fill="none" stroke="currentColor" viewBox="0 0 24 24" stroke-width="2">
                          <path stroke-linecap="round" stroke-linejoin="round" d="M15 12H9m12 0a9 9 0 11-18 0 9 9 0 0118 0z"></path>
                        </svg>
</a>                  </div>
                </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-17" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="Ze18jN5duZ8hHG0n1AuuTSz223QzGVzKCTCwy-tdkIVPVBhQW_csGwbFvYNQQA7cjIACu0QYUf5XSTN7QFLxBg" /><input type="hidden" name="date" value="2026-05-17" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-18" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="5mVLe4azPYApF7CTywdpCuRlVDZ-hAfOFGQKLjZ2WSrM3C-nAxmoBA7OYDdPTMmbRBON-QmFCvpKHYmenXk4qQ" /><input type="hidden" name="date" value="2026-05-18" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-19" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="S79qG25VQyHv8iALGWUbuGDCCS7ALMpyjAVeb0wsZ6JhBg7H6__Wpcgr8K-dLrspwLTQ4bctx0bSfN3f5yMGIQ" /><input type="hidden" name="date" value="2026-05-19" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-20" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="I_kjQY-QJOS0kqEme6TyjZE8OLKz_O6I86M3TbceOIUJQEedCjqxYJNLcYL_71IcMUrhfcT947yt2rT9HBFZBg" /><input type="hidden" name="date" value="2026-05-20" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-21" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="FZyRsXrRLJ04S62K9vxl4euImSwW2ggiPmOQVjTuOkU_JfVt_3u5GR-SfS5yt8VwS_5A42HbBRZgGhPmn-Fbxg" /><input type="hidden" name="date" value="2026-05-21" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-22" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="ZdMstlrf7FmbEHPrk9ZJ6vg1g8BJdo4mSoXt7dmRH61Pakhq33V53bzJo08Xnel7WENaDz53gxIU_G5dcp5-Lg" /><input type="hidden" name="date" value="2026-05-22" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                  <td class="px-1 sm:px-2 py-2 sm:py-3 text-center ">
                    <div class="flex items-center justify-center h-6 sm:h-7">
                      <form data-turbo-frame="_top" data-matrix-toggle-form="true" data-member-id="10" data-date="2026-05-23" data-team-id="2" data-read="true" class="inline-block" method="post" action="/calendar/toggle_read"><button data-turbo-stream="true" class="inline-flex items-center justify-center w-5 h-5 sm:w-6 sm:h-6 rounded-full transition-all duration-150 hover:scale-110 active:scale-95 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed bg-green-100 text-green-600 hover:bg-green-200" type="submit">
                        <span data-matrix-icon="read" class="">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
                        <span data-matrix-icon="unread" class="hidden">
                          <svg class="w-3 h-3 sm:w-4 sm:h-4" fill="currentColor" viewBox="0 0 20 20">
                            <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
                          </svg>
                        </span>
</button><input type="hidden" name="authenticity_token" value="e2lA5TxcqoBFLoYycLhnKdZXytfnVqQqX3GPr91XrlxR0CQ5ufY_BGL3Vpb088e4diETGJBXqR4BCAwfdljP3w" /><input type="hidden" name="date" value="2026-05-23" /><input type="hidden" name="target_member_id" value="10" /><input type="hidden" name="team_id" value="2" /></form>                    </div>
                  </td>
                <td class="px-2 sm:px-3 py-2 sm:py-3 text-center">
                  <div class="flex items-center justify-center h-6 sm:h-7">
                    <span data-member-total-for="10"
                          data-member-total="7"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-green-100 text-green-700">
                      7/7
                    </span>
                  </div>
                </td>
              </tr>
          </tbody>
        </table>
      </div>

      <!-- Summary Footer -->
      <div class="px-3 sm:px-4 py-2 sm:py-3 bg-gray-50 border-t border-gray-200">
        <div class="flex items-center justify-between text-xs sm:text-sm">
          <span class="text-gray-600">
            팀 전체: <span data-matrix-summary="completed">35</span>/<span data-matrix-summary="total">35</span> 완료
          </span>
          <span data-matrix-summary="percent" class="font-semibold text-green-600">
            100%
          </span>
        </div>
      </div>
  </div>
</turbo-frame>
</template></turbo-stream>
<turbo-stream action="update" target="member-filter-banner"><template>
    <div class="mb-2 flex items-center justify-between px-3 py-2 rounded-xl bg-emerald-100 border border-emerald-400">
    <div class="flex items-center gap-2">
      <div class="w-2 h-2 rounded-full bg-emerald-500 animate-pulse"></div>
      <span class="text-sm font-semibold text-emerald-700">
        최다솔님의 읽기 현황
      </span>
    </div>
    <a data-turbo-method="get" data-turbo-stream="true" class="inline-flex items-center gap-1 px-2 py-1 text-xs font-medium rounded-lg text-emerald-600 hover:bg-white/50 transition-colors" href="/calendar/month?date=2026-05-21&amp;team_id=2">
      <svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24" stroke-width="2">
        <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path>
      </svg>
      전체보기
</a>  </div>

</template></turbo-stream>
<turbo-stream action="update" target="selected-day-panel"><template>
  <!-- Hidden container that only maintains data attributes for Stimulus/Turbo state -->
<div class="hidden"
     data-calendar-target="selectedDay"
     data-selected-date="2026-05-21"
     data-read="true"
     data-team-ring-class="ring-emerald-400">
</div>

</template></turbo-stream>
