@font-face {
  font-family: "Peyda";
  src: url("/assets/fonts/PeydaFaNum-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Peyda";
  src: url("/assets/fonts/PeydaFaNum-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light;
  --night: #071322;
  --night-2: #112944;
  --card: #ffffff;
  --text: #0c1f35;
  --muted: #64748b;
  --line: #d8e2ee;
  --field: #f7faff;
  --blue: #1f75ed;
  --blue-dark: #145fc8;
  --danger: #c93245;
  --shadow: 0 28px 80px rgba(1, 10, 24, .42), 0 8px 24px rgba(2, 12, 27, .2);
  font-family: "Peyda", Tahoma, Arial, sans-serif;
}

* { box-sizing: border-box; }

html, body { min-height: 100%; }

body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 50% 42%, rgba(34, 92, 154, .22), transparent 34rem),
    linear-gradient(145deg, var(--night-2), var(--night) 58%);
}

button, input, textarea { font: inherit; }
button { cursor: pointer; }

.center-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 2rem 1rem;
}

.entry-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 50% 38%, rgba(29, 79, 137, .18), transparent 30rem),
    linear-gradient(180deg, #142f52 0%, #071322 100%);
}

.entry-page-main {
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2.25rem 1rem;
}

.entry-brand {
  margin-bottom: 1.8rem;
  color: #fff;
  text-align: center;
}

.marvel-logo {
  width: 4.65rem;
  height: 4.25rem;
  margin: 0 auto 1.2rem;
  filter: drop-shadow(0 .6rem 1rem rgba(7, 64, 145, .22));
}

.marvel-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.entry-brand h1 { margin: 0; color: #fff; font-size: 1.85rem; line-height: 1.45; }
.entry-brand p { margin: .35rem 0 0; color: #9db0c9; font-size: .92rem; font-weight: 700; }

.entry-card {
  width: min(100%, 31.25rem);
  padding: 2rem 1.6rem 1.45rem;
  background: var(--card);
  border-radius: 1.35rem;
  box-shadow: var(--shadow);
  animation: card-in .48s ease-out both;
}

.entry-page .entry-card { box-shadow: 0 1rem 2.5rem rgba(0, 8, 23, .28); }
.entry-page .field { margin-bottom: 1.15rem; }
.entry-page .field label { margin-bottom: .55rem; color: #14233a; font-size: .92rem; }

.entry-input { position: relative; }
.entry-page .entry-input input {
  height: 3.7rem;
  padding: 0 1rem 0 3.2rem;
  border-color: #d9e3ef;
  border-radius: .9rem;
  background: #fbfdff;
  text-align: right;
}

.entry-page .entry-input input[dir="ltr"] { text-align: right; }
.entry-page .entry-input input::placeholder { color: #9aabc2; opacity: 1; }
.entry-page .entry-input svg {
  position: absolute;
  left: 1rem;
  top: 50%;
  width: 1.45rem;
  height: 1.45rem;
  color: #9db0ca;
  transform: translateY(-50%);
  pointer-events: none;
}

.entry-page .choice-button {
  width: 100%;
  min-height: 3.55rem;
  margin: .2rem 0 .55rem;
  border-radius: 999px;
  font-size: 1rem;
}

.entry-page .form-error:empty { min-height: 0; margin: 0; }
.entry-page .form-error:not(:empty) { margin: .25rem 0 .65rem; }
.entry-page .primary-button {
  min-height: 3.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .875rem 1.125rem;
  border-radius: 999px;
  background: linear-gradient(180deg, #4260e8 0%, #253682 100%);
  font-size: .9375rem;
  font-weight: 700;
  box-shadow: 0 .625rem 1.5rem -.5rem rgba(66, 96, 232, .55);
  transition: transform .12s, box-shadow .2s, filter .2s;
}

.entry-page .button-icon { width: 1.125rem; height: 1.125rem; flex: 0 0 auto; }
.entry-page .primary-button:hover { filter: brightness(1.06); box-shadow: 0 .75rem 1.625rem -.5rem rgba(37, 54, 130, .55); }

.entry-page .primary-button:disabled {
  color: #fff;
  background: linear-gradient(180deg, #5980ef, #263ca0);
  filter: none;
  opacity: 1;
}

.academy-link {
  min-width: 17rem;
  min-height: 3.7rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  margin-top: 1.35rem;
  padding: .75rem 1.4rem;
  border-radius: 999px;
  color: #fff;
  background: #334158;
  font-size: .92rem;
  font-weight: 800;
  text-decoration: none;
  transition: background .16s, transform .16s;
}

.academy-link:hover { background: #3e4d65; transform: translateY(-1px); }
.academy-link:focus-visible { outline: 3px solid rgba(71, 145, 255, .55); outline-offset: 3px; }

.brand-mark {
  width: 3rem;
  height: 3rem;
  display: grid;
  place-items: center;
  margin: -3.55rem auto .8rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(145deg, #3b8dff, #1564d4);
  box-shadow: 0 10px 22px rgba(31, 117, 237, .35);
}

.brand-mark svg { width: 1.55rem; height: 1.55rem; }

h1 { margin: 0 0 1.45rem; text-align: center; font-size: 1.35rem; line-height: 1.5; }

.field { margin-bottom: .95rem; }
.field label { display: block; margin: 0 0 .45rem; font-size: .9rem; font-weight: 700; }

.field input, .composer textarea, .admin-login input {
  width: 100%;
  border: 1px solid var(--line);
  background: var(--field);
  color: var(--text);
  border-radius: .72rem;
  outline: none;
  transition: border-color .18s, box-shadow .18s, background .18s;
}

.field input { height: 3rem; padding: 0 .85rem; }
.field input:focus, .composer textarea:focus, .admin-login input:focus { border-color: var(--blue); background: #fff; box-shadow: 0 0 0 3px rgba(31, 117, 237, .12); }
.hint { min-height: 1rem; margin: .34rem 0 0; color: var(--muted); font-size: .75rem; }

.choice-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  min-height: 3.25rem;
  margin: .1rem 0 1rem;
  padding: .75rem 1rem;
  border: 2px solid #20a464;
  border-radius: .75rem;
  background: #20a464;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(25, 142, 85, .14);
  transition: background .18s, border-color .18s, color .18s, transform .18s, box-shadow .18s;
}

.choice-button:hover { transform: translateY(-1px); background: #198e55; box-shadow: 0 9px 20px rgba(25, 142, 85, .26); }
.choice-button:has(input:checked) { background: #117a45; border-color: #0f6d3d; box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .35), 0 8px 20px rgba(17, 122, 69, .3); }
.choice-button input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.choice-button:has(input:focus-visible) { outline: 3px solid rgba(25, 142, 85, .3); outline-offset: 2px; }

.primary-button {
  width: 100%;
  min-height: 3.15rem;
  border: 0;
  border-radius: .75rem;
  color: #fff;
  background: linear-gradient(180deg, #3288f7, var(--blue));
  box-shadow: 0 8px 18px rgba(31, 117, 237, .3);
  font-weight: 800;
  transition: transform .16s, box-shadow .16s, filter .16s;
}

.primary-button:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(31, 117, 237, .38); }
.primary-button:active { transform: translateY(0); }
.primary-button:disabled { cursor: not-allowed; filter: grayscale(.25); opacity: .68; box-shadow: none; }
.form-error { min-height: 1.3rem; margin: .2rem 0 .55rem; color: var(--danger); font-size: .82rem; text-align: center; }

.chat-shell {
  width: min(100%, 58rem);
  height: min(48rem, calc(100vh - 2rem));
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  background: #f8fbff;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 1.4rem;
  box-shadow: var(--shadow);
}

.chat-header {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: 1rem 1.2rem;
  background: #fff;
  border-bottom: 1px solid #e7edf4;
}

.avatar {
  width: 2.75rem;
  height: 2.75rem;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(145deg, #3c91ff, #165fc8);
  font-weight: 900;
}

.chat-title { margin: 0; font-size: 1rem; }
.status { margin: .2rem 0 0; color: #1a8b58; font-size: .78rem; }
.messages { overflow-y: auto; padding: 1.25rem; scroll-behavior: smooth; }
.message { max-width: min(78%, 32rem); margin: 0 0 .85rem; padding: .8rem 1rem; border-radius: 1rem 1rem .3rem 1rem; background: #fff; box-shadow: 0 3px 12px rgba(11, 35, 64, .07); white-space: pre-wrap; overflow-wrap: anywhere; }
.message.user { margin-right: auto; border-radius: 1rem 1rem 1rem .3rem; color: #fff; background: var(--blue); }
.message.system { margin-inline: auto; max-width: 90%; background: #eaf3ff; color: #35506e; text-align: center; font-size: .88rem; }
.message time { display: block; margin-top: .35rem; opacity: .65; font-size: .68rem; direction: ltr; }

.composer { display: grid; grid-template-columns: 1fr auto; gap: .7rem; padding: .85rem; background: #fff; border-top: 1px solid #e7edf4; }
.composer textarea { resize: none; min-height: 3rem; max-height: 8rem; padding: .78rem .9rem; line-height: 1.5; }
.send-button { width: 3rem; height: 3rem; align-self: end; border: 0; border-radius: .85rem; background: var(--blue); color: #fff; font-size: 1.2rem; }

.chat-page {
  min-height: 100vh;
  overflow: hidden;
  background: linear-gradient(180deg, #142f52, #071322);
}

.chat-page-main {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 1.5rem;
}

.support-chat {
  width: min(100%, 58rem);
  height: min(70rem, calc(100vh - 3rem));
  min-height: 36rem;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  border-radius: 1.15rem;
  background: #fff;
  box-shadow: 0 1.75rem 5rem rgba(0, 8, 24, .45);
}

.support-chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .75rem 1rem;
  color: #fff;
  background: #216bd1;
}

.support-brand { min-width: max-content; }
.support-title-row { display: flex; align-items: center; gap: .4rem; }
.support-title-row svg { width: 1.2rem; height: 1.2rem; flex: 0 0 auto; }
.support-title-row h1 { margin: 0; color: #fff; font-size: 1.1rem; line-height: 1.35; text-align: right; }
.support-brand p { margin: .15rem 1.6rem 0 0; color: rgba(255, 255, 255, .82); font-size: .75rem; }

.chat-actions { display: flex; align-items: center; gap: .55rem; direction: rtl; }
.chat-action {
  min-height: 2.3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  padding: .35rem .75rem;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 999px;
  color: #fff;
  background: rgba(9, 66, 148, .12);
  font-size: .82rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: background .16s, border-color .16s;
}

.chat-action:hover { background: rgba(255, 255, 255, .13); border-color: #fff; }
.chat-action:focus-visible { outline: 3px solid rgba(255, 255, 255, .45); outline-offset: 2px; }
.chat-action:disabled { cursor: default; opacity: .72; }
.chat-action-icon { width: 2.55rem; padding: 0; font-size: 1.1rem; }

.chat-notice {
  padding: .55rem 1rem;
  border-bottom: 1px solid #efc14b;
  color: #9a5a00;
  background: #fff8dd;
  font-size: .86rem;
  text-align: center;
}

.chat-notice.is-error { color: #a61d32; background: #fff0f2; border-color: #ef9aa8; }

.chat-feed {
  overflow-y: auto;
  padding: 1rem;
  direction: ltr;
  background: #e8e1db;
  scroll-behavior: smooth;
  scrollbar-color: #919191 #f2f2f2;
  scrollbar-width: auto;
}

.chat-feed::-webkit-scrollbar { width: .85rem; }
.chat-feed::-webkit-scrollbar-track { background: #f3f3f3; }
.chat-feed::-webkit-scrollbar-thumb { border: .2rem solid #f3f3f3; border-radius: 999px; background: #929292; }

.date-separator { display: flex; justify-content: center; margin: -.35rem 0 1rem; position: sticky; top: 0; z-index: 1; }
.date-separator span { padding: .35rem .9rem; border-radius: 999px; color: #4b5563; background: #d2cfcc; box-shadow: 0 .25rem .65rem rgba(22, 31, 45, .1); font-size: .78rem; font-weight: 800; direction: rtl; }
.message-row { display: flex; margin-bottom: .7rem; }
.message-row.incoming { justify-content: flex-start; }
.message-row.outgoing { justify-content: flex-end; }

.chat-message {
  width: fit-content;
  max-width: min(78%, 34rem);
  padding: .85rem 1rem .65rem;
  border-radius: 1rem 1rem 1rem .22rem;
  color: #111827;
  background: #fff;
  box-shadow: 0 .12rem .35rem rgba(27, 35, 46, .1);
  direction: rtl;
}

.message-row.outgoing .chat-message { border-radius: 1rem 1rem .22rem 1rem; background: #caf0bb; }
.chat-message p { margin: 0; font-size: .95rem; line-height: 1.8; white-space: pre-wrap; overflow-wrap: anywhere; }
.chat-message time { display: block; margin-top: .25rem; color: #6b7280; font-size: .7rem; text-align: left; direction: ltr; }
.message-actions { display: flex; gap: .45rem; margin-top: .55rem; }
.message-actions button { min-height: 1.9rem; padding: .25rem .65rem; border: 0; border-radius: 999px; color: #087d80; background: #e4f6f3; font-size: .75rem; }
.message-actions button:last-child { color: #667085; background: #f0f2f4; }
.message-actions button:focus-visible { outline: 2px solid #168ea2; outline-offset: 2px; }

.chat-composer {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: end;
  gap: .65rem;
  padding: .65rem .8rem;
  direction: ltr;
  border-top: 1px solid #d9e1e8;
  background: #fff;
}

.chat-composer textarea {
  width: 100%;
  min-height: 3.1rem;
  max-height: 7rem;
  resize: none;
  padding: .75rem 1rem;
  border: 1px solid #cfd9e4;
  border-radius: 999px;
  outline: none;
  color: #23334c;
  background: #fff;
  direction: rtl;
  line-height: 1.55;
}

.chat-composer textarea:focus { border-color: #3699eb; box-shadow: 0 0 0 3px rgba(54, 153, 235, .15); }
.chat-composer textarea::placeholder { color: #91a0b5; }
.composer-tool, .chat-composer .send-button {
  width: 3.1rem;
  height: 3.1rem;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
}

.composer-tool { border: 0; color: #f39222; background: transparent; font-size: 1.15rem; }
.attachment-button { border: 1px solid #168a8e; color: #314766; }
.attachment-button svg { width: 1.35rem; height: 1.35rem; }
.chat-composer .send-button { align-self: end; border: 0; color: #fff; background: #3699eb; box-shadow: 0 .2rem .55rem rgba(54, 153, 235, .35); }
.chat-composer .send-button svg { width: 1.65rem; height: 1.65rem; transform: rotate(180deg); }
.composer-tool:hover, .chat-composer .send-button:hover { filter: brightness(.96); }
.composer-tool:focus-visible, .chat-composer .send-button:focus-visible { outline: 3px solid rgba(54, 153, 235, .28); outline-offset: 2px; }
.composer-tool:disabled, .chat-composer .send-button:disabled, .chat-composer textarea:disabled { cursor: not-allowed; opacity: .55; }

.chat-dark .support-chat { background: #101b29; }
.chat-dark .support-chat-header { background: #123d73; }
.chat-dark .chat-notice { color: #f0c56a; background: #2c2a22; }
.chat-dark .chat-feed { background: #1b2634; scrollbar-color: #64748b #111c29; }
.chat-dark .date-separator span { color: #d8e1ec; background: #3a4858; }
.chat-dark .message-row.incoming .chat-message { color: #edf3fa; background: #2b3949; }
.chat-dark .message-row.outgoing .chat-message { color: #effff6; background: #216746; }
.chat-dark .chat-message time { color: #b8c4d2; }
.chat-dark .chat-composer { border-color: #344254; background: #101b29; }
.chat-dark .chat-composer textarea { color: #edf3fa; border-color: #43536a; background: #1c2938; }
.chat-dark .attachment-button { color: #dce7f5; border-color: #6a819d; }

.admin-page { min-height: 100vh; padding: 1rem; }
.admin-login { width: min(100%, 25rem); margin: 12vh auto; padding: 1.4rem; background: #fff; border-radius: 1.2rem; box-shadow: var(--shadow); }
.admin-login input { height: 3rem; padding: 0 .8rem; margin-bottom: .8rem; }
.admin-shell { width: min(100%, 76rem); height: calc(100vh - 2rem); margin: 0 auto; display: grid; grid-template-columns: 20rem 1fr; overflow: hidden; background: #f8fbff; border-radius: 1.2rem; box-shadow: var(--shadow); }
.session-list { overflow-y: auto; background: #fff; border-left: 1px solid #e1e8f0; }
.admin-heading { display: flex; align-items: center; justify-content: space-between; padding: 1rem; border-bottom: 1px solid #e1e8f0; }
.admin-heading h1 { margin: 0; font-size: 1.05rem; }
.ghost-button { border: 0; background: transparent; color: var(--muted); }
.session-item { width: 100%; padding: .9rem 1rem; border: 0; border-bottom: 1px solid #edf1f5; background: #fff; color: inherit; text-align: right; }
.session-item:hover, .session-item.active { background: #edf5ff; }
.session-name { display: block; font-weight: 800; }
.session-meta { display: block; margin-top: .3rem; color: var(--muted); font-size: .75rem; direction: ltr; text-align: right; }
.admin-chat { min-width: 0; display: grid; grid-template-rows: auto 1fr auto; }
.empty-state { display: grid; place-items: center; height: 100%; color: var(--muted); text-align: center; padding: 2rem; }
.hidden { display: none !important; }

.profit-page { padding-block: 2.5rem; }
.profit-shell, .payment-card {
  width: min(100%, 46rem);
  padding: 1.5rem;
  background: #fff;
  border-radius: 1.4rem;
  box-shadow: var(--shadow);
}

.profit-header { text-align: center; }
.profit-header h1, .payment-card h1 { margin: .65rem 0 .25rem; }
.profit-subtitle { margin: 0 0 1.35rem; color: var(--muted); }
.demo-badge { display: inline-flex; align-items: center; padding: .38rem .7rem; border: 1px solid #e9b949; border-radius: 999px; background: #fff8df; color: #805b00; font-size: .78rem; font-weight: 800; }
.loading-state { padding: 3rem 1rem; color: var(--muted); text-align: center; }
.amount-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; }
.amount-card { min-height: 7rem; display: flex; flex-direction: column; justify-content: center; padding: 1rem; border: 1px solid #dce6f0; border-radius: 1rem; background: #f8fbff; }
.amount-card span { color: var(--muted); font-size: .85rem; }
.amount-card strong { margin-top: .45rem; font-size: clamp(1.15rem, 3vw, 1.65rem); direction: ltr; text-align: right; }
.amount-card small { margin-top: .35rem; color: #187b4b; }
.profit-amount { border-color: #86d3ad; background: #edfbf4; }
.profit-amount strong { color: #117a45; }
.total-amount { grid-column: 1 / -1; color: #fff; border: 0; background: linear-gradient(135deg, #102a47, #174a78); }
.total-amount span { color: #cbd9e8; }
.withdrawal-form { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid #e3eaf2; }
.fee-row { display: flex; align-items: center; justify-content: space-between; margin: .4rem 0 1rem; padding: .85rem 1rem; border-radius: .8rem; background: #fff7e1; color: #745300; }
.fee-row strong { direction: ltr; }
.fee-button { width: 100%; min-height: 3.2rem; border: 0; border-radius: .78rem; background: #198e55; color: #fff; font-weight: 800; box-shadow: 0 8px 20px rgba(25, 142, 85, .25); }
.fee-button:hover { background: #117a45; }
.fee-button:disabled { cursor: wait; opacity: .7; }
.demo-note { margin: 1rem 0 0; color: var(--muted); font-size: .76rem; text-align: center; line-height: 1.7; }
.not-found { padding: 2.5rem 1rem; text-align: center; }
.not-found strong { font-size: 1.25rem; }
.not-found p { color: var(--muted); }
.not-found a { color: var(--blue); font-weight: 800; }
.payment-card { max-width: 30rem; text-align: center; }
.payment-amount { display: flex; align-items: center; justify-content: space-between; margin: 1.2rem 0; padding: 1rem; border-radius: .9rem; background: #eef8f3; }
.payment-amount strong { color: #117a45; font-size: 1.35rem; direction: ltr; }
.payment-details { margin: 0 0 1rem; text-align: right; }
.payment-details div { display: grid; grid-template-columns: 7rem 1fr; gap: .7rem; padding: .7rem 0; border-bottom: 1px solid #e9eef3; }
.payment-details dt { color: var(--muted); }
.payment-details dd { margin: 0; overflow-wrap: anywhere; }
.payment-status { min-height: 1.5rem; margin: .8rem 0 0; }
.payment-status.success { color: #117a45; font-weight: 800; }

@keyframes card-in { from { opacity: 0; transform: translateY(14px) scale(.985); } }

@media (max-width: 680px) {
  .center-page { padding: 1rem; }
  .entry-page-main { justify-content: flex-start; padding: 2rem 1rem 1.5rem; }
  .entry-brand { margin-bottom: 1.35rem; }
  .marvel-logo { width: 4rem; height: 3.65rem; margin-bottom: .8rem; }
  .entry-brand h1 { font-size: 1.55rem; }
  .entry-brand p { font-size: .82rem; }
  .entry-card { padding: 1.45rem 1.1rem 1.1rem; border-radius: 1.15rem; }
  .entry-page .field { margin-bottom: .9rem; }
  .entry-page .entry-input input { height: 3.25rem; }
  .entry-page .choice-button, .entry-page .primary-button { min-height: 3.2rem; }
  .academy-link { min-width: 15.5rem; min-height: 3.25rem; margin-top: 1rem; }
  .chat-shell { height: calc(100vh - 1rem); border-radius: 1rem; }
  .message { max-width: 88%; }
  .chat-page-main { padding: 0; }
  .support-chat { width: 100%; height: 100vh; min-height: 0; border-radius: 0; }
  .support-chat-header { align-items: flex-start; flex-wrap: wrap; gap: .6rem; padding: .7rem .75rem; }
  .support-brand { width: 100%; }
  .support-title-row h1 { font-size: 1rem; }
  .chat-actions { width: 100%; justify-content: flex-start; gap: .4rem; }
  .chat-action { min-height: 2rem; padding: .25rem .6rem; font-size: .75rem; }
  .chat-action-icon { width: 2.2rem; }
  .chat-notice { padding: .45rem .65rem; font-size: .75rem; line-height: 1.6; }
  .chat-feed { padding: .75rem .55rem; }
  .chat-message { max-width: 86%; padding: .7rem .8rem .55rem; }
  .chat-message p { font-size: .88rem; }
  .chat-composer { gap: .35rem; padding: .5rem; }
  .composer-tool, .chat-composer .send-button { width: 2.7rem; height: 2.7rem; }
  .chat-composer textarea { min-height: 2.7rem; padding: .6rem .8rem; font-size: .88rem; }
  .admin-page { padding: 0; }
  .admin-shell { height: 100vh; border-radius: 0; grid-template-columns: 8.5rem 1fr; }
  .session-name { font-size: .78rem; }
  .session-meta { font-size: .65rem; }
  .profit-shell, .payment-card { padding: 1.1rem; border-radius: 1rem; }
  .amount-grid { grid-template-columns: 1fr; }
  .total-amount { grid-column: auto; }
  .payment-details div { grid-template-columns: 1fr; gap: .25rem; }
}

@media (max-width: 390px) {
  .entry-page .primary-button { font-size: .90625rem; padding: .8125rem 1rem; }
  .chat-actions { direction: rtl; }
  .chat-action { flex: 1; padding-inline: .35rem; }
  .chat-action-icon { flex: 0 0 2.15rem; }
  .composer-tool { display: none; }
  .chat-composer { grid-template-columns: minmax(0, 1fr) auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
