/* [project]/src/app/dashboard/page.module.css [app-client] (css) */
.page-module__Fx1_7W__loginContainer {
  background: var(--color-bg-primary);
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: 2rem;
  display: flex;
}

.page-module__Fx1_7W__loginCard {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  text-align: center;
  width: 100%;
  max-width: 420px;
  box-shadow: var(--shadow-card);
  border-radius: 20px;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 3rem 2.5rem;
  display: flex;
}

.page-module__Fx1_7W__loginLogo {
  font-size: 3.5rem;
  line-height: 1;
}

.page-module__Fx1_7W__loginTitle {
  color: var(--color-text-primary);
  margin: 0;
  font-family: Noto Serif JP, serif;
  font-size: 1.75rem;
}

.page-module__Fx1_7W__loginSub {
  color: var(--color-text-muted);
  margin: 0;
  font-size: .9rem;
}

.page-module__Fx1_7W__discordBtn {
  color: #fff;
  cursor: pointer;
  background: #5865f2;
  border: none;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: .6rem;
  width: 100%;
  margin-top: .5rem;
  padding: .875rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  transition: background .2s, transform .1s;
  display: flex;
}

.page-module__Fx1_7W__discordBtn:hover {
  background: #4752c4;
  transform: translateY(-1px);
}

.page-module__Fx1_7W__loginNote {
  color: var(--color-text-muted);
  margin: 0;
  font-size: .78rem;
  line-height: 1.6;
}

.page-module__Fx1_7W__loadingContainer {
  background: var(--color-bg-primary);
  min-height: 100vh;
  color: var(--color-text-muted);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.page-module__Fx1_7W__loadingFish {
  font-size: 3rem;
  animation: 1.5s ease-in-out infinite page-module__Fx1_7W__swim;
}

@keyframes page-module__Fx1_7W__swim {
  0%, 100% {
    transform: translateX(0)rotate(0);
  }

  50% {
    transform: translateX(8px)rotate(-5deg);
  }
}

.page-module__Fx1_7W__container {
  background: var(--color-bg-primary);
  max-width: 720px;
  min-height: 100vh;
  margin: 0 auto;
  padding: 5rem 1.5rem 4rem;
}

.page-module__Fx1_7W__profileCard {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-card);
  border-radius: 16px;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
  padding: 1.5rem;
  display: flex;
}

.page-module__Fx1_7W__avatar {
  border: 2px solid var(--color-border);
  border-radius: 50%;
  flex-shrink: 0;
  width: 72px;
  height: 72px;
}

.page-module__Fx1_7W__avatarFallback {
  background: var(--color-bg-secondary);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 72px;
  height: 72px;
  font-size: 2rem;
  display: flex;
}

.page-module__Fx1_7W__profileInfo {
  flex-direction: column;
  gap: .3rem;
  display: flex;
}

.page-module__Fx1_7W__username {
  color: var(--color-text-primary);
  margin: 0;
  font-family: Noto Serif JP, serif;
  font-size: 1.4rem;
}

.page-module__Fx1_7W__userId {
  color: var(--color-text-muted);
  margin: 0;
  font-size: .8rem;
}

.page-module__Fx1_7W__agreedBadge {
  color: #059669;
  font-size: .75rem;
}

.page-module__Fx1_7W__statsRow {
  grid-template-columns: repeat(3, 1fr);
  gap: .75rem;
  margin-bottom: 2rem;
  display: grid;
}

.page-module__Fx1_7W__statCard {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  text-align: center;
  box-shadow: var(--shadow-card);
  border-radius: 12px;
  flex-direction: column;
  align-items: center;
  gap: .25rem;
  padding: 1.25rem 1rem;
  display: flex;
}

.page-module__Fx1_7W__statNum {
  color: var(--color-accent-gold);
  font-family: Raleway, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}

.page-module__Fx1_7W__statLabel {
  color: var(--color-text-muted);
  font-size: .72rem;
}

.page-module__Fx1_7W__section {
  margin-bottom: 2rem;
}

.page-module__Fx1_7W__sectionTitle {
  color: var(--color-text-secondary);
  border-bottom: 1px solid var(--color-border);
  margin: 0 0 .75rem;
  padding-bottom: .5rem;
  font-family: Noto Serif JP, serif;
  font-size: 1rem;
}

.page-module__Fx1_7W__sessionList {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.page-module__Fx1_7W__sessionCard {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-card);
  border-radius: 12px;
  padding: 1rem 1.25rem;
}

.page-module__Fx1_7W__sessionHeader {
  justify-content: space-between;
  align-items: center;
  margin-bottom: .5rem;
  display: flex;
}

.page-module__Fx1_7W__sessionWork {
  color: var(--color-text-primary);
  font-family: Noto Serif JP, serif;
  font-size: .95rem;
}

.page-module__Fx1_7W__statusBadge {
  color: var(--color-accent-gold);
  background: #0ea5e91a;
  border: 1px solid #0ea5e933;
  border-radius: 20px;
  padding: .2rem .6rem;
  font-size: .72rem;
}

.page-module__Fx1_7W__sessionBody {
  color: var(--color-text-muted);
  flex-wrap: wrap;
  gap: 1rem;
  font-size: .82rem;
  display: flex;
}

.page-module__Fx1_7W__ticketList {
  flex-direction: column;
  gap: .5rem;
  margin-bottom: .75rem;
  display: flex;
}

.page-module__Fx1_7W__ticketCard {
  background: linear-gradient(135deg, #fefce8, #fef9c3);
  border: 1px solid #fde68a;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  padding: .875rem 1.25rem;
  display: flex;
  box-shadow: 0 2px 8px #f59e0b1f;
}

.page-module__Fx1_7W__ticketUsed {
  opacity: .5;
  filter: grayscale(.6);
}

.page-module__Fx1_7W__ticketCode {
  color: #92400e;
  letter-spacing: .08em;
  font-family: Raleway, monospace;
  font-size: 1.05rem;
  font-weight: 700;
}

.page-module__Fx1_7W__ticketStatus {
  color: #b45309;
  background: #f59e0b26;
  border: 1px solid #f59e0b4d;
  border-radius: 20px;
  padding: .2rem .7rem;
  font-size: .75rem;
}

.page-module__Fx1_7W__ticketUsed .page-module__Fx1_7W__ticketStatus {
  color: var(--color-text-muted);
  background: #64748b1a;
  border-color: #64748b33;
}

.page-module__Fx1_7W__ticketNote {
  color: var(--color-text-muted);
  margin: 0;
  font-size: .78rem;
  line-height: 1.6;
}

.page-module__Fx1_7W__emptyCard {
  background: var(--color-bg-secondary);
  border: 1px dashed var(--color-border);
  text-align: center;
  color: var(--color-text-muted);
  border-radius: 12px;
  padding: 2rem;
  font-size: .9rem;
  line-height: 1.8;
}

.page-module__Fx1_7W__resultsList {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.page-module__Fx1_7W__resultCard {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-card);
  border-radius: 12px;
  padding: 1rem 1.25rem;
}

.page-module__Fx1_7W__resultHeader {
  justify-content: space-between;
  align-items: center;
  margin-bottom: .4rem;
  display: flex;
}

.page-module__Fx1_7W__workTitle {
  color: var(--color-text-primary);
  font-family: Noto Serif JP, serif;
  font-size: .9rem;
}

.page-module__Fx1_7W__playDate {
  color: var(--color-text-muted);
  font-size: .75rem;
}

.page-module__Fx1_7W__resultBody {
  color: var(--color-text-secondary);
  flex-wrap: wrap;
  gap: 1rem;
  font-size: .82rem;
  display: flex;
}

.page-module__Fx1_7W__resultNote {
  color: var(--color-text-muted);
  margin: .5rem 0 0;
  font-size: .8rem;
  line-height: 1.5;
}

/*# sourceMappingURL=src_app_dashboard_page_module_3f937152.css.map*/