<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-purple-400 group" href="/calendar/month?date=2029-11-01&amp;member_id=13&amp;team_id=3">
      <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">
        2029년 12월
      </h1>
      <p id="calendar-week-range" class="text-xs text-gray-500 mt-0.5">
        11월 25일 - 12월 01일
      </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-purple-400 group" href="/calendar/month?date=2030-01-01&amp;member_id=13&amp;team_id=3">
      <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-purple-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-purple-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="2029-11-25"
           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">
              25
            </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="2029-11-26"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2029-11-27"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2029-11-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="2029-11-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="2029-11-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 hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-purple-50/30"
           data-date="2029-12-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-purple-600">
              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 bg-purple-50/30"
           data-date="2029-12-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-purple-600">
              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"
           data-date="2029-12-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-gray-700">
              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"
           data-date="2029-12-04"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2029-12-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="2029-12-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="2029-12-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 bg-purple-50/30"
           data-date="2029-12-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-purple-600">
              8
            </span>

          <!-- Read indicator -->

          <!-- Event dots placeholder -->
          <div class="flex gap-1 mt-1">
            <!-- Future: Add event dots here -->
          </div>
        </div>
      </div>
      <!-- Card-style day cells -->
      <div class="relative bg-white rounded-lg md:rounded-xl shadow-sm transition-all duration-200 min-h-[45px] sm:min-h-[55px] md:min-h-[80px] aspect-square hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-purple-50/30"
           data-date="2029-12-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-purple-600">
              9
            </span>

          <!-- Read indicator -->

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

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

          <!-- Read indicator -->

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

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

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

          <!-- 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-purple-50/30"
           data-date="2029-12-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-purple-600">
              15
            </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-purple-50/30"
           data-date="2029-12-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-purple-600">
              16
            </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="2029-12-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-gray-700">
              17
            </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="2029-12-18"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

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

          <!-- Read indicator -->

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

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

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

          <!-- 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-purple-50/30"
           data-date="2029-12-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-purple-600">
              22
            </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-purple-50/30"
           data-date="2029-12-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-purple-600">
              23
            </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="2029-12-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-gray-700">
              24
            </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="2029-12-25"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="true"
           data-calendar-target="day">

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

          <!-- Read indicator -->

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

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

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

          <!-- 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-purple-50/30"
           data-date="2029-12-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-purple-600">
              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 hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer bg-purple-50/30"
           data-date="2029-12-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-purple-600">
              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 hover:shadow-md hover:scale-[1.02] active:scale-[0.98] cursor-pointer"
           data-date="2029-12-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-gray-700">
              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 bg-gray-50 opacity-40 pointer-events-none"
           data-date="2030-01-01"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2030-01-02"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2030-01-03"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2030-01-04"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="2030-01-05"
           data-action="click->calendar#showDayDetails touchstart->calendar#onTouchStart touchend->calendar#onTouchEnd"
           data-current-month="false"
           data-calendar-target="day">

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

          <!-- Read indicator -->

          <!-- 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="3" 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="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-blue-50 text-blue-700 hover:shadow-md border border-transparent hover:border-gray-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-400" href="/calendar/month?date=2029-12-01&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 ">
                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="1"
                   data-bar-incomplete-class="bg-gradient-to-r from-blue-500 to-blue-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-blue-500 to-blue-600"
                   style="width: 0%;">
              </div>
            </div>
              <div data-team-progress-chapters="1" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                0/126 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="2" data-team-goal-chapters="105" data-team-actual-chapters="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-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=2029-12-01&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 ">
                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="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: 0%;">
              </div>
            </div>
              <div data-team-progress-chapters="2" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                0/105 챕터
              </div>
</a>
          <a data-turbo-method="get" data-turbo-stream="true" data-team-progress-card="3" data-team-goal-chapters="105" data-team-actual-chapters="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-purple-600 text-white shadow-xl shadow-purple-500/50 border-2 border-purple-400 shadow-lg shadow-purple-500/30 ring-2 ring-purple-400 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-purple-400" href="/calendar/month?date=2029-12-01&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 ">
                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="3"
                   data-bar-incomplete-class="bg-white/80"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-white/80"
                   style="width: 0%;">
              </div>
            </div>
              <div data-team-progress-chapters="3" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                0/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="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-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=2029-12-01&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 ">
                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="4"
                   data-bar-incomplete-class="bg-gradient-to-r from-amber-500 to-amber-600"
                   class="h-full rounded-full transition-all duration-500 ease-out bg-gradient-to-r from-amber-500 to-amber-600"
                   style="width: 0%;">
              </div>
            </div>
              <div data-team-progress-chapters="4" class="mt-1 sm:mt-1.5 text-[10px] sm:text-xs opacity-80">
                0/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=2029-12-01&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=2029-11-18&amp;team_id=3">
          <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">
          11/25 – 12/01
        </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=2029-12-02&amp;team_id=3">
          <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]">1</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-purple-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=2029-12-01&amp;member_id=14&amp;team_id=3">
                      <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="14" data-date="2029-11-25" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="1r5nAqRJC9rrdZ_PASBf15nsRU3gANLyouMvk4yy4hseo_Q-Oz5IuTOQXrHgWtDqrVB6GMDn1lzWHMmaWpsByA" /><input type="hidden" name="date" value="2029-11-25" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-11-26" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="B3TNR0z-eyBSz5ILEVeGKUPbFA21CxiKHhj4ZVjgxpjPaV5704k4Q4oqU3XwLQkUd2crWJXsHCRq5x5sjsklSw" /><input type="hidden" name="date" value="2029-11-26" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-11-27" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="KAnp8INW_5pQt497gtOJt4Prt3eZP47p_lq_ouzUEd7gFHrMHCG8-YhSTgVjqQaKt1eIIrnYikeKpVmrOv3yDQ" /><input type="hidden" name="date" value="2029-11-27" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-11-28" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="wq0OLeYDGsB4zEoqaCsFtJ_YAiJ-YNeD-H1JVL8BTpwKsJ0ReXRZo6Api1SJUYqJq2Q9d16H0y2Mgq9daSitTw" /><input type="hidden" name="date" value="2029-11-28" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-11-29" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="nO9COzSun_GL0GvLTxaa1-r6DpP6Yk3tA9TMasmnG-tU8tEHq9ncklM1qrWubBXq3kYxxtqFSUN3KypjH474OA" /><input type="hidden" name="date" value="2029-11-29" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-11-30" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="1-QD3s9J6C4VGvJ6d5kM1HUAhCglsKwDrBCLU3Oh2Jkf-ZDiUD6rTc3_MwSW44PpQby7fQVXqK3Y721apYg7Sg" /><input type="hidden" name="date" value="2029-11-30" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14" data-date="2029-12-01" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="8KSdWLAoWR27-zrXbliuVe8C15dvqRmABOaHXKzJ7pQ4uQ5kL18afmMe-6mPIiFo277owk9OHS5wGWFVeuANRw" /><input type="hidden" name="date" value="2029-12-01" /><input type="hidden" name="target_member_id" value="14" /><input type="hidden" name="team_id" value="3" /></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="14"
                          data-member-total="0"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-gray-100 text-gray-700">
                      0/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-gray-50/50 hover:bg-purple-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=2029-12-01&amp;member_id=12&amp;team_id=3">
                      <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="12" data-date="2029-11-25" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="wykGFevEUAiuMMIu_T_Jobhk-UtJaiwjOpnImzyazDQLNJUpdLMTa3bVA1AcRUacjNjGHmmNKI1OZi6S6rMv5w" /><input type="hidden" name="date" value="2029-11-25" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-11-26" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="hr5VhVaUlHeXYv_K7I-w0Tt6IiitX2IiAMH4hvrMyoJOo8a5yePXFE-HPrQN9T_sD8YdfY24Zox0Ph6PLOUpUQ" /><input type="hidden" name="date" value="2029-11-26" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-11-27" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="kIKnLg52OlsN5rVRsVHVEHFPRW5jZ_R4rjTROk6eFQJYnzQSkQF5ONUDdC9QK1otRfN6O0OA8NbayzczmLf20Q" /><input type="hidden" name="date" value="2029-11-27" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-11-28" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="vwgpYTBZr7SdLpS0nY0rFDXkwq7kyUSGfG1s5cfk91R3Fbpdry7s10XLVcp896QpAVj9-8QuQCgIkorsEc0Uhw" /><input type="hidden" name="date" value="2029-11-28" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-11-29" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="d8jJppOLIBu-jyAWftkY3GUwNJmg3Cc8pKlAGLDlNh6_1VqaDPxjeGZq4Wifo5fhUYwLzIA7I5LQVqYRZszVzQ" /><input type="hidden" name="date" value="2029-11-29" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-11-30" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="YkMCjlOeTDfx4vcCdPE1l6WkE9B7L9ccEr9MShzQfzWqXpGyzOkPVCkHNnyVi7qqkRgshVvI07JmQKpDyvmc5g" /><input type="hidden" name="date" value="2029-11-30" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12" data-date="2029-12-01" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="b8_qiKkhqP6ZEaD0hFv0RfWxPVJeOb1i__nS2sTfxB6n0nm0NlbrnUH0YYplIXt4wQ0CB37eucyLBjTTEvYnzQ" /><input type="hidden" name="date" value="2029-12-01" /><input type="hidden" name="target_member_id" value="12" /><input type="hidden" name="team_id" value="3" /></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="12"
                          data-member-total="0"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-gray-100 text-gray-700">
                      0/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-white hover:bg-purple-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-purple-100 text-purple-700 font-bold ring-1 ring-purple-400" href="/calendar/month?date=2029-12-01&amp;team_id=3">
                      <span>김희순</span>
                        <svg class="w-3 h-3 sm:w-3.5 sm:h-3.5 text-purple-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="13" data-date="2029-11-25" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="VsQskAPjiU16wJxqeDU82m9Q-WNijfWD6AO_0F5qf9We2b-snJTKLqIlXRSZT7PnW-zGNkJq8S2c_FnZiEOcBg" /><input type="hidden" name="date" value="2029-11-25" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-11-26" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="DDq-l2fE6kAffhxdhCv-V8fjUmKXOiDy2cJp2M_1BdHEJy2r-LOpI8eb3SNlUXFq819tN7fdJFytPY_RGdzmAg" /><input type="hidden" name="date" value="2029-11-26" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-11-27" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="SIAxtwLXRXV-va_bpG1F1hl1qDB1Xl0HCkdnyh8xNmiAnaKLnaAGFqZYbqVFF8rrLcmXZVW5Wal-uIHDyRjVuw" /><input type="hidden" name="date" value="2029-11-27" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-11-28" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="Jq-0gSVgNe6qWdewdzbA3ou-gnM9q2XyJB2ouOYmEFzusie9uhd2jXK8Fs6WTE_jvwK9Jh1MYVxQ4k6xMA_zjw" /><input type="hidden" name="date" value="2029-11-28" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-11-29" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="nYMBwf34jaFvcD7e7JsfPvP-ZzxtINKjKayWTLjkQ6NVnpL9Yo_OwreV_6AN4ZADx0JYaU3H1g1dU3BFbs2gcA" /><input type="hidden" name="date" value="2029-11-29" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-11-30" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="lZD1bLiU2svd-mPRLDEK0cIHD7MNsJQgkpACj5EKyzpdjWZQJ-OZqAUfoq_NS4Xs9rsw5i1XkI7mb-SGRyMo6Q" /><input type="hidden" name="date" value="2029-11-30" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13" data-date="2029-12-01" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="1_ONxyLzgzGZ85oEYMCFIdk8hR-7EcNZiEzrk31tIW4f7h77vYTAUkEWW3qBugoc7YC6Spv2x_f8sw2aq0TCvQ" /><input type="hidden" name="date" value="2029-12-01" /><input type="hidden" name="target_member_id" value="13" /><input type="hidden" name="team_id" value="3" /></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="13"
                          data-member-total="0"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-gray-100 text-gray-700">
                      0/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-gray-50/50 hover:bg-purple-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=2029-12-01&amp;member_id=15&amp;team_id=3">
                      <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="15" data-date="2029-11-25" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="nwep5kVXaLd7N3aZpWV06R0bM9Er2Q4WoqGwEHAjqDRXGjra2iAr1KPSt-dEH_vUKacMhAs-CrjWXlYZpgpL5w" /><input type="hidden" name="date" value="2029-11-25" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-11-26" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="fAIGOJyVF1XY_ml12269nQh-lSGselBQaaNj7DBMbR-0H5UEA-JUNgAbqAs6FDKgPMKqdIydVP4dXIXl5mWOzA" /><input type="hidden" name="date" value="2029-11-26" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-11-27" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="5Md_hWtZM2lt4PiNR27N7uVv4KCsnR44alH0LV_-Y0ss2uy59C5wCrUFOfOmFELT0dPf9Yx6GpYerhIkideAmA" /><input type="hidden" name="date" value="2029-11-27" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-11-28" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="wncFlJRRDae7N_dHyggF3RG9TF60K0ZYqJgxkZuAJSIKapaoCyZOxGPSNjkrcorgJQFzC5TMQvbcZ9eYTanG8Q" /><input type="hidden" name="date" value="2029-11-28" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-11-29" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="Np9bfEn2uRqPhEp_QQ6G2EuhzQhdOwkvyqSraueSLZr-gshA1oH6eVdhiwGgdAnlfx3yXX3cDYG-W01jMbvOSQ" /><input type="hidden" name="date" value="2029-11-29" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-11-30" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="uaP-AM2P3_ab_dT1kp65GVTwnLRZDVAf7GgINPhPV_Bxvm08UviclUMYFYtz5DYkYEyj4XnqVLGYl-49Lma0Iw" /><input type="hidden" name="date" value="2029-11-30" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15" data-date="2029-12-01" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="ugvIZEVvNhxaSVyzEGk9nchvtaxM4xAISdr6BnGOKFJyFltY2hh1f4Ksnc3xE7Kg_NOK-WwEFKY9JRwPp6fLgQ" /><input type="hidden" name="date" value="2029-12-01" /><input type="hidden" name="target_member_id" value="15" /><input type="hidden" name="team_id" value="3" /></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="15"
                          data-member-total="0"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-gray-100 text-gray-700">
                      0/7
                    </span>
                  </div>
                </td>
              </tr>
              <tr class="bg-white hover:bg-purple-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=2029-12-01&amp;member_id=16&amp;team_id=3">
                      <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="16" data-date="2029-11-25" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="Jg6OXON3hB3Os5x8Tks-lGhNq2SPMBqVkHwXN_fq8V3uEx1gfADHfhZWXQKvMbGpXPGUMa_XHjvkg_E-IcMSjg" /><input type="hidden" name="date" value="2029-11-25" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-11-26" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="dwZf_lG9MFMtFiDdjv0n-ILk8aNeGb6xwpbUgDz-E6q_G8zCzspzMPXz4aNvh6jFtljO9n7-uh-2aTKJ6tfweQ" /><input type="hidden" name="date" value="2029-11-26" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-11-27" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="X-F3ZZjyCgziRiOIK2QUHcSVYidM5xO8HEy117kP0ViX_ORZB4VJbzqj4vbKHpsg8CldcmwAFxJos1PebyYyiw" /><input type="hidden" name="date" value="2029-11-27" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-11-28" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="BKzZkWc-xI-uyDlA_vzKTTahfKBmdVsaGLx8SXxiscbMsUqt-EmH7HYt-D4fhkVwAh1D9UaSX7RsQ5pAqktSFQ" /><input type="hidden" name="date" value="2029-11-28" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-11-29" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="YhVjl2lZ4UXLl0aenu7jG98dggHAmn4mj3g_yZJ5gtaqCPCr9i6iJhNyh-B_lGwm66G9VOB9eoj7h9nARFBhBQ" /><input type="hidden" name="date" value="2029-11-29" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-11-30" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="2u9VwFR_1alMspSIbrT0AZVI40AovGl6AzDGp9iVyHcS8sb8ywiWypRXVfaPzns8ofTcFQhbbdR3zyCuDrwrpA" /><input type="hidden" name="date" value="2029-11-30" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16" data-date="2029-12-01" data-team-id="3" data-read="false" 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-gray-100 text-gray-400 hover:bg-gray-200" type="submit">
                        <span data-matrix-icon="read" 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="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="">
                          <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="TX9d2GyzfqOKQc7bF__if2WZCIGrHkdvoLra3zUjcnCFYs7k88Q9wFKkD6X2hW1CUSU31Iv5Q8HURTzW4wqRow" /><input type="hidden" name="date" value="2029-12-01" /><input type="hidden" name="target_member_id" value="16" /><input type="hidden" name="team_id" value="3" /></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="16"
                          data-member-total="0"
                          class="inline-flex items-center justify-center min-w-[20px] px-1.5 py-0.5 text-xs font-semibold rounded-full bg-gray-100 text-gray-700">
                      0/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">0</span>/<span data-matrix-summary="total">35</span> 완료
          </span>
          <span data-matrix-summary="percent" class="font-semibold text-gray-700">
            0%
          </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-purple-100 border border-purple-400">
    <div class="flex items-center gap-2">
      <div class="w-2 h-2 rounded-full bg-purple-500 animate-pulse"></div>
      <span class="text-sm font-semibold text-purple-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-purple-600 hover:bg-white/50 transition-colors" href="/calendar/month?date=2029-12-01&amp;team_id=3">
      <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="2029-12-01"
     data-read="false"
     data-team-ring-class="ring-purple-400">
</div>

</template></turbo-stream>
