<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-blue-400 group" href="/calendar/month?date=2025-12-28&amp;member_id=5&amp;team_id=1">
      <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년 1월
      </h1>
      <p id="calendar-week-range" class="text-xs text-gray-500 mt-0.5">
        01월 25일 - 01월 31일
      </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-blue-400 group" href="/calendar/month?date=2026-02-28&amp;member_id=5&amp;team_id=1">
      <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-blue-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-blue-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="2025-12-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 -->

          <!-- 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="2025-12-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 -->

          <!-- 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="2025-12-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 -->

          <!-- 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="2025-12-31"
           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">
              31
            </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"
           data-date="2026-01-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 -->

          <!-- 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-01-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-gray-700">
              2
            </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-blue-50/30"
           data-date="2026-01-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-blue-600">
              3
            </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-blue-50/30"
           data-date="2026-01-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-blue-600">
              4
            </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"
           data-date="2026-01-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 -->

          <!-- 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-01-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 -->

          <!-- 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-01-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 -->

          <!-- 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-01-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"
           data-date="2026-01-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-gray-700">
              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-blue-50/30"
           data-date="2026-01-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-blue-600">
              10
            </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-blue-50/30"
           data-date="2026-01-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-blue-600">
              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-01-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-01-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-01-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-01-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"
           data-date="2026-01-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-gray-700">
              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-blue-50/30"
           data-date="2026-01-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-blue-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 bg-blue-50/30"
           data-date="2026-01-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-blue-600">
              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-01-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-01-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-01-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-01-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"
           data-date="2026-01-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-gray-700">
              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-blue-50/30"
           data-date="2026-01-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-blue-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 bg-blue-50/30"
           data-date="2026-01-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-blue-600">
              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-01-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-01-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-01-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-01-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"
           data-date="2026-01-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-gray-700">
              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-blue-50/30"
           data-date="2026-01-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-blue-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>
  </div>
</div>
</turbo-frame></template></turbo-stream>
<turbo-stream action="replace" target="weekly-team-matrix"><template>
  <turbo-frame data-current-team-id="1" 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-600 text-white shadow-xl shadow-blue-500/50 border-2 border-blue-400 shadow-lg shadow-blue-500/30 ring-2 ring-blue-400 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-400" href="/calendar/month?date=2026-01-28&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-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="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="126" 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-50 text-emerald-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-emerald-400" href="/calendar/month?date=2026-01-28&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 ">
                84%
              </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-gradient-to-r from-emerald-500 to-emerald-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-emerald-500 to-emerald-600"
                   style="width: 84%;">
              </div>
            </div>
              <div data-team-progress-chapters="2" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                105/126 챕터
              </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="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-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-01-28&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 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="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-green-400 to-green-500"
                   style="width: 100%;">
              </div>
            </div>
              <div data-team-progress-chapters="3" 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="4" 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-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-01-28&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 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="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-green-400 to-green-500"
                   style="width: 100%;">
              </div>
            </div>
              <div data-team-progress-chapters="4" 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="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-01-28&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-01-18&amp;team_id=1">
          <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">
          01/25 – 01/31
        </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-02-01&amp;team_id=1">
          <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]">25</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]">26</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]">27</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]">28</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]">29</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]">30</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]">31</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-blue-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-01-28&amp;member_id=4&amp;team_id=1">
                      <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="4" data-date="2026-01-25" data-team-id="1" 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="R4gXujd7E8U7ceEPOieDyEyeX4JjTw-YhbcvF-TyFWGRXavhPNEH7cd6s37JTOYpZgEn4Gj_T8cvnDFvr6wcKA" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-26" data-team-id="1" 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="m5URHQPC6cQ8DslxsLLX9EUdiBniN1MrYz8BJlwaeoBNQK1GCGj97MAFmwBD2bIVb4Lwe-mHE3TJFB9eF0RzyQ" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-27" data-team-id="1" 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="0oEnZDrD6XYjyc74AwNBTC5OkjYh8TA8nugE_BRpXlAEVJs_MWn9Xt_CnInwaCStBNHqVCpBcGM0wxqEXzdXGQ" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-28" data-team-id="1" 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="Xa3vIz1djVSM1oi0qLE-8C4WXRAH1OyXelc4o-oGoXWLeFN4NveZfHDd2sVb2lsRBIklcgxkrMjQfCbboVioPA" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-29" data-team-id="1" 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="XV385hBOiZiXiTJ7jEvlx5fi9blNktkEpu1GLyooO_6LiEC9G-SdsGuCYAp_IIAmvX2N20YimVsMxlhXYXYytw" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-30" data-team-id="1" 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="miTiAjVKQ4Qu1V8julrNTgLa5C1dDCBuqp07XBaDG5pM8V5ZPuBXrNLeDVJJMaivKEWcT1a8YDEAtiUkXd0S0w" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4" data-date="2026-01-31" data-team-id="1" 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="Iuj9hGSb-qma7DGIJUT771uUqnHPX8iCDIuZ_1LqPED0PUHfbzHugWbnY_nWL54OcQvSE8TviN2moIeHGbQ1CQ" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="4" /><input type="hidden" name="team_id" value="1" /></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="4"
                          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-blue-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-01-28&amp;member_id=2&amp;team_id=1">
                      <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="2" data-date="2026-01-25" data-team-id="1" 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="dkTdAd8n0v_ehh7ZNRC7yWAp5Ura9vji-M-5FaGQKAigkWFa1I3G1yKNTKjGe94oSradKNFGuL1S5Kdt6s4hQQ" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-26" data-team-id="1" 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="FWitwApdSESFj-kb9QcPaoa7ehT2CKqHHchhk0k5lALDvRGbAfdcbHmEu2oGbGqLrCQCdv246ti343_rAmedSw" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-27" data-team-id="1" 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="GwYAlE1ozfQ8Ts8x4BW_hg4j63EENLkEuwHeY4cC_9vN07zPRsLZ3MBFnUATftpnJLyTEw-E-VsRKsAbzFz2kg" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-28" data-team-id="1" 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="6X7wvqyLbwELf4K2EpIYaPb3c_wzLXdRlLQZqlF1-sI_q0zlpyF7Kfd00Mfh-X2J3GgLnjidNw4-nwfSGivziw" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-29" data-team-id="1" 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="_OZt0e4suhfTyknL9ZWowiCz1Ay8VDADDT86j2pv9MoqM9GK5YauPy_BG7oG_s0jCiysbrfkcFynFCT3ITH9gw" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-30" data-team-id="1" 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="Lm9EsEwVAK4YMsvPJ8hL3IV6KvCo6GuL3U2lFRGxPmH4uvjrR78UhuQ5mb7Uoy49r-VSkqNYK9R3ZrttWu83KA" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2" data-date="2026-01-31" data-team-id="1" 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="ygPK1EPfATJG18e1g45ztjxwcgn_z2ORYexHSEutw8Ec1naPSHUVGrrclcRw5RZXFu8Ka_R_I87Lx1kwAPPKiA" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="2" /><input type="hidden" name="team_id" value="1" /></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="2"
                          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-blue-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-01-28&amp;member_id=1&amp;team_id=1">
                      <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="1" data-date="2026-01-25" data-team-id="1" 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="BEzYkCg4hvVdhLJHE7vNjJk5lcyuA8aApSwGX9z6QwrSmWTLI5KS3aGP4Dbg0Khts6btrqWzht8PBxgnl6RKQw" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-26" data-team-id="1" 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="WYzBg8yGNr90sp1loY1g7_uuetlaUQFF7zCuOpB3TRSPWX3Yxywil4i5zxRS5gUO0TECu1HhQRpFG7BC2ylEXQ" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-27" data-team-id="1" 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="Y0HoAYJEDd9EsnIC01bIId4UsvhLjKiEQWmQIYrok221lFRaie4Z97i5IHMgPa3A9IvKmkA86NvrQo5ZwbaaJA" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-28" data-team-id="1" 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="IyIq1ggFkz1KrY89MEJ9N3Xp_hTut6p-EQ-i8JX5iPr195aNA6-HFbam3UzDKRjWX3aGduUH6iG7JLyI3qeBsw" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-29" data-team-id="1" 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="5JQzU4y5Mu4bgxexJh8IJUsyxwMthAYdSjaP7JHJxHYyQY8IhxMmxueIRcDVdG3EYa2_YSY0RkLgHZGU2pfNPw" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-30" data-team-id="1" 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="6fhloFRihAA_44XDlA7drkpjy4NAXc11PSQx36atmBU_Ldn7X8iQKMPo17JnZbhPYPyz4UvtjSqXDy-n7fORXA" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1" data-date="2026-01-31" data-team-id="1" 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="LFZc4fpu6Pp89acGEMUehV7a0UtFKgX8MHul8ss1zrP6g-C68cT80oD-9XfjrntkdEWpKU6aRaOaULuKgGvH-g" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="1" /><input type="hidden" name="team_id" value="1" /></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="1"
                          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-blue-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-01-28&amp;member_id=3&amp;team_id=1">
                      <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="3" data-date="2026-01-25" data-team-id="1" 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="jMFGf6FzG2eYDdV0pdqQOxEMY9Ns_BpWVXStGR941LxaFPokqtkPT2QGhwVWsfXaO5MbsWdMWgn_X7NhVCbd9Q" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-26" data-team-id="1" 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="nmMeKF24XZOdSXp9eMsB9cmkivvVbh_3IaGYMcpYFatItqJzVhJJu2FCKAyLoGQU4zvymd7eX6iLioZJgQYc4g" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-27" data-team-id="1" 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="8q8ZTEsBuyMZb66NT-QvArUizw2p7XhP6okMlybqHP8keqUXQKuvC-Vk_Py8j0rjn723b6JdOBBAohLvbbQVtg" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-28" data-team-id="1" 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="cKhrGRAP_rRN3P6kMDqIUkNs9maKkq1NM_1Zbx1nJvumfddCG6XqnLHXrNXDUe2zafOOBIEi7RKZ1kcXVjkvsg" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-29" data-team-id="1" 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="jnPez34iN2M3To5nNmrhvEKB51xCxAEglEsnzkfGPFhYpmKUdYgjS8tF3BbFAYRdaB6fPkl0QX8-YDm2DJg1EQ" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-30" data-team-id="1" 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="riq_z9FUm2JYE5S4DU_dvKCCoSNKK_LqmHLlx2Twn8J4_wOU2v6PSqQYxsn-JLhdih3ZQUGbsrUyWfu_L66Wiw" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3" data-date="2026-01-31" data-team-id="1" 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="7IxbxRAgHMSQMol_e6FgnL7-wDKd7Y7KwOSlzmjNYo86WeeeG4oI7Gw52w6IygV9lGG4UJZdzpVqz7u2I5Nrxg" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="3" /><input type="hidden" name="team_id" value="1" /></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="3"
                          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-blue-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-blue-100 text-blue-700 font-bold ring-1 ring-blue-400" href="/calendar/month?date=2026-01-28&amp;team_id=1">
                      <span>김채욱</span>
                        <svg class="w-3 h-3 sm:w-3.5 sm:h-3.5 text-blue-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="5" data-date="2026-01-25" data-team-id="1" 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="3VCEit7vSsNhmlEITZxs3x78ORGj2AVRsNSfEfpCQ1gLhTjR1UVe652RA3m-9wk-NGNBc6hoRQ4a_4FpsRxKEQ" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-26" data-team-id="1" 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="0wP1VIeUjD9nRKvEZHF62o3jJYkrvmAgZpV343CkKtgF1kkPjD6YF5tP-bWXGh87p3xd6yAOIH_MvmmbO_ojkQ" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-27" data-team-id="1" 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="1Gg8JjWOQJSdPUfMnqWwE501DPoENLt7N0qbLVc1CtwCvYB9PiRUvGE2Fb1tztXyt6p0mA-E-ySdYYVVHGsDlQ" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-28" data-team-id="1" 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="UmhxqOK4yrdNc1PrWHi3pQ6CXCWiAkZMNxWNYhOYotCEvc3z6RLen7F4AZqrE9JEJB0kR6myBhOdPpMaWMarmQ" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-29" data-team-id="1" 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="5j2kwLyC4MvAxYJjKA2PydN8hwj_OMNmWj1yM6yKYDMw6Bibtyj04zzO0BLbZuoo-eP_avSIgznwFmxL59Rpeg" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-30" data-team-id="1" 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="eUSk2p8cy9iCpGFbLbJlKE7a4qZC-_MVeffe09VbT62vkRiBlLbf8H6vMyre2QDJZEWaxElLs0rT3MCrngVG5A" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5" data-date="2026-01-31" data-team-id="1" 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="m9s9veRbPFsOt9FFFtCOUosLQDc8H39M4S6WeU7SunxNDoHm7_Eoc_K8gzTlu-uzoZQ4VTevPxNLBYgBBYyzNQ" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="5" /><input type="hidden" name="team_id" value="1" /></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="5"
                          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-blue-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-01-28&amp;member_id=6&amp;team_id=1">
                      <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="6" data-date="2026-01-25" data-team-id="1" 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="9MuVmbfd_zK0vStH2biJnTeGPW-uDpPiUL_ohpq1N_0iHinCvHfrGki2eTYq0-x8HRlFDaW-0736lPb-0es-tA" /><input type="hidden" name="date" value="2026-01-25" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-26" data-team-id="1" 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="Su_mWGIr1Nmw28PFLoQGaGTQVlAgXNJHmBES2slcWO-cOloDaYHA8UzQkbTd72OJTk8uMivskhgyOgyiggJRpg" /><input type="hidden" name="date" value="2026-01-26" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-27" data-team-id="1" 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="HKo26rpmdp9z_zRtEyXTm6hFpmC7PXoaJQCX2_Z7NhnKf4qxscxit4_0ZhzgTrZ6gtreArCNOkWPK4mjvSU_UA" /><input type="hidden" name="date" value="2026-01-27" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-28" data-team-id="1" 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="FtIS98XH0UWqodsJ75UOCBCc9h_m-GgHrHGZTXMxL_LAB66szm3FbVaqiXgc_mvpOgOOfe1IKFgGWoc1OG8muw" /><input type="hidden" name="date" value="2026-01-28" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-29" data-team-id="1" 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="gVAdvpnWIaGUgJ1mDACdhnUppJWiu4l2Ijn_PhO6fipXhaHlknw1iWiLzxf_a_hnX7bc96kLySmIEuFGWOR3Yw" /><input type="hidden" name="date" value="2026-01-29" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-30" data-team-id="1" 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="NgjNjw6XDNQZRAkvs5dMDrQ4_GgkH1kglrflinWg7vjg3XHUBT0Y_OVPW15A_CnvnqeECi-vGX88nPvyPv7nsQ" /><input type="hidden" name="date" value="2026-01-30" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6" data-date="2026-01-31" data-team-id="1" 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="Gr9NQiHj7V5Zm_WF1_23LNw7UPpOgJCXu_053WytZUTMavEZKkn5dqWQp_QkltLN9qQomEUw0MgR1ielJ_NsDQ" /><input type="hidden" name="date" value="2026-01-31" /><input type="hidden" name="target_member_id" value="6" /><input type="hidden" name="team_id" value="1" /></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="6"
                          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">42</span>/<span data-matrix-summary="total">42</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-blue-100 border border-blue-400">
    <div class="flex items-center gap-2">
      <div class="w-2 h-2 rounded-full bg-blue-500 animate-pulse"></div>
      <span class="text-sm font-semibold text-blue-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-blue-600 hover:bg-white/50 transition-colors" href="/calendar/month?date=2026-01-28&amp;team_id=1">
      <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-01-28"
     data-read="true"
     data-team-ring-class="ring-blue-400">
</div>

</template></turbo-stream>
