/* Support desk additions on top of the casino design system (main.css). */
.desk-main { max-width: 1480px; margin: 0 auto; padding: 22px 20px 40px; }
.desk-badge { font-size: 10px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: #fff; padding: 3px 8px; border-radius: 6px; background: linear-gradient(135deg, #22d68e, #10b981); }
.desk-who { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.desk-who small { display: block; font-size: 11px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; }

/* landing */
.landing { min-height: calc(100dvh - var(--header-h)); display: grid; place-items: center; padding: 30px 16px; }
.landing-card { width: 100%; max-width: 440px; padding: 30px; text-align: center; }
.landing-card h1 { font-family: var(--font-display); font-size: 26px; margin: 14px 0 8px; }
.landing-card p { color: var(--muted); margin: 0 0 22px; }
.landing-ico { width: 64px; height: 64px; margin: 0 auto; border-radius: 20px; display: grid; place-items: center; background: var(--grad); box-shadow: var(--glow); }
.landing-ico svg { width: 30px; height: 30px; }
.divider { display: flex; align-items: center; gap: 12px; color: var(--dim); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; margin: 22px 0 16px; }
.divider::before, .divider::after { content: ''; flex: 1; height: 1px; background: var(--line); }
.staff-form { text-align: left; }

/* player chat page */
.pchat { max-width: 760px; margin: 0 auto; height: calc(100dvh - var(--header-h) - 44px); display: flex; flex-direction: column; overflow: hidden; }
.pchat-head { display: flex; align-items: center; gap: 12px; padding: 16px 18px; background: var(--grad); }
.pchat-head b { display: block; font-family: var(--font-display); font-size: 16px; }
.pchat-head span { display: flex; align-items: center; gap: 6px; font-size: 12px; opacity: 0.9; }
.pchat .chat-list { padding: 18px; }
.pchat .msg { max-width: 72%; }
.pchat-code { margin-left: auto; text-align: right; font-size: 11px; opacity: 0.85; }
.pchat-code b { font-size: 15px; }

/* staff */
.sp-layout { height: calc(100dvh - var(--header-h) - 110px); }
.sp-thread .src { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; flex: none; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 12px; }
.src-site { background: linear-gradient(135deg, #6d5dfc, #c04dff); }
.src-tg { background: linear-gradient(135deg, #2aabee, #1e88d0); }
.msg.agent-other { background: rgba(58, 160, 255, 0.18); }
.msg.owner-msg .msg-label { color: var(--gold); }
.toolbar { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 14px; }
.toolbar h1 { font-family: var(--font-display); font-size: 22px; margin: 0 auto 0 0; display: flex; align-items: center; gap: 10px; }

@media (max-width: 820px) {
  .desk-main { padding: 14px 12px 20px; }
  .pchat { height: calc(100dvh - var(--header-h) - 28px); border-radius: 20px; }
  .pchat .msg { max-width: 86%; }
  .sp-layout { height: calc(100dvh - var(--header-h) - 120px); }
  .toolbar h1 { font-size: 18px; width: 100%; }
}
