/* Grabzii v43 consolidated canonical stylesheet
 * Generated from the current patch-era app.css plus the v42 style lock.
 * Duplicate selectors have been merged by cascade context to stop older styles from randomly winning.
 */

*{
  box-sizing:border-box;
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
  background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 82%);
}

body:after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.08),transparent 30%);
}

body.chat-open{
  overflow:hidden;
}

a{
  color:var(--cyan);
}

button,input,textarea,select{
  font:inherit;
}

button{
  user-select:none;
}

img{
  max-width:100%;
  display:block;
}

.brand-icon img{
  width:58px;
  max-width:none;
}

.pill,.ghost,.primary{
  border-radius:999px;
  border:1px solid transparent;
  padding:11px 16px;
  font-weight:850;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease;
}

.pill{
  color:var(--soft);
  background:rgba(255,255,255,.065);
  border-color:rgba(255,255,255,.14);
}

.pill:hover,.pill.active{
  border-color:rgba(32,228,255,.62);
  box-shadow:0 0 0 3px rgba(32,228,255,.08),0 0 24px rgba(32,228,255,.18);
  transform:translateY(-1px);
}

.primary:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 50px rgba(125,85,255,.46),0 0 28px rgba(255,101,216,.22);
}

.primary.big,.ghost.big{
  padding:14px 21px;
  font-size:16px;
}

.ghost{
  color:var(--soft);
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.16);
}

.ghost:hover{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.085);
  transform:translateY(-1px);
}

.danger{
  background:linear-gradient(135deg,#ff4777,#ff9d59);
  box-shadow:0 14px 36px rgba(255,85,121,.28);
}

button:disabled,select:disabled{
  opacity:.56;
  cursor:not-allowed;
}

.landing-shell{
  display:block;
  position:relative;
  padding-bottom:48px;
}

.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);
  gap:38px;
  align-items:center;
  padding:62px 0 38px;
}

.hero-copy{
  position:relative;
  z-index:2;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 12px;
  color:#fbdcff;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:12px;
  font-weight:950;
}

.eyebrow-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--cyan);
  box-shadow:0 0 16px rgba(32,228,255,.8);
}

.hero h1{
  margin:0 0 20px;
  font-size:clamp(44px,6vw,86px);
  line-height:.9;
  letter-spacing:-.07em;
  text-wrap:balance;
  text-shadow:0 14px 50px rgba(0,0,0,.24);
}

.gradient{
  background:linear-gradient(135deg,var(--pink),var(--gold) 48%,var(--cyan));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:none;
}

.hero p{
  max-width:670px;
  margin:0 0 26px;
  color:var(--muted);
  font-size:20px;
  line-height:1.55;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

.hero-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:24px;
  max-width:640px;
}

.hero-stats div,.card,.feature-card,.safety-panel,.machine-toolbar,.control-card,.incoming-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  backdrop-filter:blur(14px);
}

.hero-stats div{
  padding:14px 16px;
  border-radius:22px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}

.hero-stats strong{
  display:block;
  font-size:15px;
}

.hero-stats span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}

.hero-showcase{
  position:relative;
  min-height:520px;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow),var(--glow);
  border:1px solid rgba(255,255,255,.14);
  background:#0c0528;
}

.hero-showcase:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,5,34,.18),transparent 35%,rgba(255,255,255,.05));
  pointer-events:none;
}

.hero-art{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
}

.float-chip{
  position:absolute;
  z-index:3;
  display:flex;
  align-items:center;
  gap:8px;
  background:rgba(17,10,45,.78);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:8px 13px;
  font-weight:950;
  box-shadow:0 18px 40px rgba(0,0,0,.26);
  backdrop-filter:blur(10px);
}

.float-chip img{
  width:34px;
  height:34px;
  object-fit:contain;
}

.float-chip-one{
  left:18px;
  bottom:24px;
}

.float-chip-two{
  right:18px;
  top:24px;
}

.section{
  padding:28px 0;
}

.section-head{
  margin-bottom:18px;
}

.section-head h2,.safety-panel h2,.machine-toolbar h2{
  margin:0;
  font-size:clamp(28px,4vw,48px);
  line-height:1;
  letter-spacing:-.045em;
  text-wrap:balance;
}

.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.feature-card img{
  width:100%;
  height:170px;
  object-fit:contain;
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.25));
  margin-bottom:12px;
}

.feature-card:nth-child(3) img{
  object-fit:cover;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
}

.feature-card h3,.card h3,.incoming-panel h3,.control-card h3{
  margin:0 0 9px;
  font-size:22px;
  letter-spacing:-.025em;
}

.feature-card p,.card p,.safety-panel p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}

.safety-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  align-items:center;
  gap:28px;
  padding:32px;
  overflow:hidden;
}

.safety-panel img{
  max-height:320px;
  object-fit:contain;
  filter:drop-shadow(0 22px 46px rgba(255,101,216,.22));
  justify-self:center;
}

.safety-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.safety-pills span{
  border:1px solid rgba(32,228,255,.24);
  background:rgba(32,228,255,.075);
  border-radius:999px;
  padding:9px 12px;
  color:#dffaff;
  font-size:13px;
  font-weight:850;
}

.card{
  padding:20px;
}

.muted{
  color:var(--muted);
}

.app-shell{
  display:none;
  padding:26px 0 38px;
}

.dashboard{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.sidebar{
  display:flex;
  flex-direction:column;
  gap:14px;
  position:sticky;
  top:86px;
}

.profile-card{
  text-align:center;
  overflow:hidden;
  position:relative;
}

.profile-card:before{
  content:"";
  position:absolute;
  inset:-90px;
  background:radial-gradient(circle at 50% 0%,rgba(255,101,216,.28),transparent 44%),radial-gradient(circle at 50% 40%,rgba(32,228,255,.18),transparent 42%);
  pointer-events:none;
}

.profile-card>*{
  position:relative;
}

.balance{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}

.mini{
  min-width:0;
}

.currency-mini{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:3px 8px;
  align-items:center;
  text-align:left;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.13);
  border-radius:20px;
  padding:10px;
}

.currency-mini img{
  width:38px;
  height:38px;
  object-fit:contain;
  grid-row:1/3;
}

.currency-mini span{
  font-size:11px;
  color:var(--muted);
  font-weight:850;
}

.currency-mini b{
  font-size:22px;
  line-height:1;
}

.form{
  display:grid;
  gap:11px;
}

.profile-form{
  box-shadow:0 20px 70px rgba(0,0,0,.32);
}

.field{
  display:grid;
  gap:7px;
}

.field label{
  font-size:13px;
  font-weight:900;
  color:#efe9ff;
}

.field input,.field textarea,.field select{
  width:100%;
  border:1px solid rgba(255,255,255,.15);
  border-radius:18px;
  background:rgba(0,0,0,.23);
  color:var(--text);
  padding:12px 14px;
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

.field textarea{
  min-height:88px;
  resize:vertical;
}

.field input:focus,.field textarea:focus,.field select:focus{
  border-color:rgba(32,228,255,.62);
  box-shadow:0 0 0 3px rgba(32,228,255,.10);
  background:rgba(0,0,0,.31);
}

[hidden]{
  display:none!important;
}

.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0 16px;
}

.machine-workspace{
  min-width:0;
}

.machine-toolbar{
  padding:18px 18px 2px;
  margin-bottom:16px;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(320px,1fr);
  gap:16px;
  align-items:end;
}

.machine-tabs{
  justify-content:flex-end;
  margin:0 0 16px;
}

.live-machine-shell{
  min-width:0;
}

.machine-copy p{
  margin:0;
}

.mode-tabs{
  margin:0;
  flex:0 0 auto;
}

.capsule:nth-child(2n){
  animation-delay:.35s;
}

.capsule:nth-child(3n){
  animation-delay:.7s;
}

.capsule-face:before{
  left:9px;
}

.capsule-face:after{
  right:9px;
}

.capsule .capsule-badge{
  position:absolute;
  top:10px;
  right:10px;
  border-radius:999px;
  background:rgba(0,0,0,.36);
  border:1px solid rgba(255,255,255,.18);
  font-size:10px;
  font-weight:950;
  padding:4px 7px;
  color:#fff;
}

.empty{
  border:1px dashed rgba(255,255,255,.22);
  border-radius:24px;
  padding:24px;
  text-align:center;
  color:var(--muted);
}

.empty.small{
  padding:14px;
  font-size:13px;
}

.control-stack{
  display:grid;
  gap:14px;
}

.control-card,.incoming-panel{
  padding:18px;
}

.incoming-panel{
  border-top:0;
  margin-top:0;
}

.session-list{
  display:grid;
  gap:10px;
}

.session-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,rgba(255,101,216,.12),transparent 45%);
  pointer-events:none;
}

.session-card>*{
  position:relative;
}

.session-card strong{
  font-size:14px;
}

.session-card small{
  color:var(--muted);
  font-size:12px;
  word-break:break-word;
}

.session-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.chat-stage:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 18% 0%,rgba(255,101,216,.34),transparent 32%),radial-gradient(circle at 82% 4%,rgba(32,228,255,.22),transparent 28%),linear-gradient(180deg,rgba(9,5,34,.98),rgba(5,3,19,.98));
  z-index:-3;
}

.chat-backdrop-art{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.16;
  filter:blur(1px) saturate(1.15);
  z-index:-2;
}

.chat-stage:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.44));
  z-index:-1;
  pointer-events:none;
}

.chat-head .muted{
  margin:0;
}

.chat-head .ghost{
  flex:0 0 auto;
}

.chat-pending-overlay{
  position:absolute;
  inset:96px 22px 176px;
  z-index:5;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(6,3,22,.75);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.12);
  border-radius:34px;
}

.chat-pending-overlay.active{
  display:flex;
}

.pending-card h3{
  font-size:28px;
  margin:0 0 8px;
  letter-spacing:-.03em;
}

.pending-card p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
}

.rtc-line{
  padding:8px 11px;
  border-radius:16px;
  max-width:82%;
  font-size:14px;
  line-height:1.35;
  word-break:break-word;
}

.rtc-line.me{
  align-self:flex-end;
  background:linear-gradient(135deg,rgba(125,85,255,.46),rgba(255,101,216,.26));
}

.rtc-line.them{
  align-self:flex-start;
  background:rgba(255,255,255,.09);
}

.rtc-input-row input{
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  padding:13px 17px;
  color:var(--text);
  outline:none;
}

.rtc-input-row input:focus{
  border-color:rgba(32,228,255,.62);
  box-shadow:0 0 0 3px rgba(32,228,255,.10);
}

.modal{
  position:fixed;
  inset:0;
  background:rgba(2,1,10,.72);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:80;
  padding:20px;
  backdrop-filter:blur(12px);
}

.modal.active{
  display:flex;
}

.modal .card{
  width:min(640px,100%);
}

.auth-card:before,.incoming-grab-card:before{
  content:"";
  position:absolute;
  inset:-80px;
  background:radial-gradient(circle at 50% 0%,rgba(255,101,216,.30),transparent 40%),radial-gradient(circle at 50% 36%,rgba(32,228,255,.16),transparent 46%);
  pointer-events:none;
}

.auth-card>*{
  position:relative;
}

.auth-art{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:8px;
}

.auth-art img:first-child{
  width:60px;
  height:60px;
  object-fit:contain;
  border-radius:20px;
}

.auth-art img:last-child{
  width:168px;
}

.auth-switcher{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:14px 0 16px;
  padding:6px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(0,0,0,.20);
}

.auth-switcher .pill{
  margin:0;
  text-align:center;
}

.auth-screen{
  animation:authScreenIn .16s ease-out;
}

.auth-actions{
  margin-bottom:0;
}

.auth-actions .primary{
  min-width:126px;
}

.auth-actions .ghost{
  white-space:normal;
}

.incoming-grab-modal{
  z-index:90;
}

.incoming-grab-card>*{
  position:relative;
}

.incoming-grab-card h2{
  margin:0 0 8px;
  font-size:34px;
  letter-spacing:-.04em;
}

.small-notice{
  font-size:13px;
}

.incoming-actions{
  justify-content:center;
  margin-bottom:0;
}

.incoming-actions button{
  min-width:132px;
}

.toast{
  position:fixed;
  right:18px;
  bottom:18px;
  max-width:390px;
  background:linear-gradient(180deg,rgba(31,22,72,.96),rgba(19,14,48,.96));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:var(--shadow);
  border-radius:20px;
  padding:15px 16px;
  display:none;
  z-index:100;
  color:#fff;
  line-height:1.4;
}

.toast.active{
  display:block;
  animation:toastIn .18s ease-out;
}

.setup-warning{
  margin:18px auto;
  border-color:rgba(255,230,109,.45);
  background:rgba(255,230,109,.08);
}

@keyframes capsuleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

@keyframes toastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

@keyframes authScreenIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

@media (max-width:1080px){
.hero{
  grid-template-columns:1fr;
}
}

@media (max-width:1080px){
.hero-showcase{
  min-height:420px;
}
}

@media (max-width:1080px){
.hero-art{
  min-height:420px;
}
}

@media (max-width:1080px){
.dashboard{
  grid-template-columns:1fr;
}
}

@media (max-width:1080px){
.sidebar{
  position:static;
  display:grid;
  grid-template-columns:1fr 1fr;
}
}

@media (max-width:1080px){
.sidebar>.ghost{
  grid-column:1/-1;
}
}

@media (max-width:1080px){
.machine-toolbar,.machine-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:1080px){
.machine-tabs{
  justify-content:flex-start;
}
}

@media (max-width:1080px){
.control-stack{
  grid-template-columns:1fr 1fr;
}
}

@media (max-width:1080px){
.feature-grid{
  grid-template-columns:1fr 1fr;
}
}

@media (max-width:1080px){
.safety-panel{
  grid-template-columns:1fr 220px;
}
}

@media (max-width:760px){
.hero{
  padding:34px 0 24px;
}
}

@media (max-width:760px){
.hero h1{
  font-size:clamp(38px,13vw,60px);
}
}

@media (max-width:760px){
.hero p{
  font-size:17px;
}
}

@media (max-width:760px){
.hero-stats{
  grid-template-columns:1fr;
}
}

@media (max-width:760px){
.hero-showcase{
  min-height:360px;
}
}

@media (max-width:760px){
.hero-art{
  min-height:360px;
}
}

@media (max-width:760px){
.feature-grid,.sidebar,.control-stack,.safety-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:760px){
.safety-panel{
  padding:24px;
}
}

@media (max-width:760px){
.safety-panel img{
  max-height:230px;
}
}

@media (max-width:760px){
.machine-copy{
  align-items:flex-start;
  flex-direction:column;
}
}

@media (max-width:760px){
.chat-stage.active{
  padding:14px 14px 0;
  overflow:auto;
}
}

@media (max-width:760px){
.chat-head{
  align-items:center;
}
}

@media (max-width:760px){
.chat-pending-overlay{
  position:fixed;
  inset:88px 14px 172px;
}
}

@media (max-width:760px){
.pending-card img{
  height:150px;
}
}

@media (max-width:760px){
.rtc-transcript{
  height:150px;
  max-height:none;
}
}

@media (max-width:760px){
.rtc-input-row{
  grid-template-columns:1fr;
}
}

@media (max-width:760px){
.chat-actions{
  justify-content:center;
}
}

@media (max-width:760px){
.modal{
  padding:14px;
}
}

@media (max-width:760px){
.incoming-grab-art{
  height:210px;
}
}

@media (max-width:480px){
.topbar-inner{
  padding:10px 0;
}
}

@media (max-width:480px){
.brand-icon{
  width:42px;
  height:42px;
}
}

@media (max-width:480px){
.brand-copy img{
  width:104px;
}
}

@media (max-width:480px){
.primary.big,.ghost.big{
  width:100%;
  justify-content:center;
}
}

@media (max-width:480px){
.hero-actions{
  display:grid;
}
}

@media (max-width:480px){
.float-chip{
  display:none;
}
}

@media (max-width:480px){
.incoming-grab-card h2{
  font-size:29px;
}
}

@media (max-width:480px){
.auth-switcher{
  grid-template-columns:1fr;
  border-radius:24px;
}
}

@media (max-width:480px){
.auth-actions{
  display:grid;
}
}

@media (max-width:480px){
.auth-actions .primary,.auth-actions .ghost{
  width:100%;
}
}

.danger-lite{
  border-color:rgba(255,85,121,.30)!important;
  color:#ffdfe7!important;
  background:rgba(255,85,121,.08)!important;
}

.danger-lite:hover{
  border-color:rgba(255,85,121,.56)!important;
  background:rgba(255,85,121,.14)!important;
}

.report-card{
  position:relative;
  overflow:hidden;
}

.report-card:before{
  content:"";
  position:absolute;
  inset:-90px;
  background:radial-gradient(circle at 50% 0%,rgba(255,85,121,.22),transparent 42%),radial-gradient(circle at 70% 42%,rgba(32,228,255,.12),transparent 46%);
  pointer-events:none;
}

.report-card>*{
  position:relative;
}

.report-card h2{
  margin:0 0 8px;
  font-size:34px;
  letter-spacing:-.04em;
}

.report-actions{
  justify-content:flex-end;
  margin-bottom:0;
}

.chat-actions .ghost,.chat-actions .primary{
  min-width:118px;
}

.feature-card{
  padding:18px;
  min-height:340px;
  overflow:hidden;
  position:relative;
  background:radial-gradient(circle at 0% 0%, rgba(255,101,216,.20), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(32,228,255,.12), transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));
}

.feature-card-capsule img,
.feature-card-machine img,
.feature-card-chat img{
  transition:transform .18s ease, filter .18s ease;
}

.feature-card:hover img{
  transform:translateY(-4px) scale(1.02);
  filter:drop-shadow(0 24px 42px rgba(0,0,0,.35));
}

.feature-card-capsule:after,
.feature-card-machine:after,
.feature-card-chat:after{
  content:"";
  position:absolute;
  inset:auto 14px 14px 14px;
  height:96px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(4,3,18,.42));
  pointer-events:none;
}

.machine-viewport[data-machine-theme*="mystery"] .machine-glass-glow{
  background:radial-gradient(circle at 50% 30%, rgba(125,85,255,.32), transparent 42%);
}

.machine-viewport[data-machine-theme*="gold"],
.machine-viewport[data-machine-theme*="verified"]{
  box-shadow:inset 0 0 0 1px rgba(255,230,109,.12), 0 24px 70px rgba(0,0,0,.34), 0 0 34px rgba(255,230,109,.12);
}

.empty.state-empty,
.live-capsules .empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
  color:var(--muted);
}

.empty.state-empty strong,
.live-capsules .empty strong{
  color:#fff;
}

.empty.state-empty span,
.live-capsules .empty span{
  display:block;
}

.empty-state-art{
  width:112px;
  height:112px;
  object-fit:contain;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.30));
}

.empty-state-art.small-art{
  width:78px;
  height:78px;
}

.capsule strong,.capsule small,.capsule .capsule-state-chip,.capsule .capsule-badge{
  position:relative;
  z-index:2;
}

.capsule-face-dot.left{
  left:8px;
}

.capsule-face-dot.right{
  right:8px;
}

.capsule-common{
  box-shadow:0 18px 40px rgba(0,0,0,.24),0 0 24px rgba(50,135,255,.08);
}

.capsule-neon{
  box-shadow:0 18px 40px rgba(0,0,0,.24),0 0 28px rgba(32,228,255,.16);
}

.capsule-arcade{
  box-shadow:0 18px 40px rgba(0,0,0,.24),0 0 28px rgba(255,101,216,.16);
}

.capsule-crystal{
  box-shadow:0 18px 40px rgba(0,0,0,.24),0 0 28px rgba(125,85,255,.18);
}

.capsule-gold{
  box-shadow:0 18px 40px rgba(0,0,0,.24),0 0 28px rgba(255,230,109,.18);
}

.session-card{
  position:relative;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.17);
  border-radius:20px;
  overflow:hidden;
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:12px;
}

.session-card-body{
  min-width:0;
  display:grid;
  gap:6px;
}

.session-card-body strong{
  font-size:14px;
  line-height:1.2;
}

.session-card-body small{
  font-size:12px;
  color:var(--muted);
}

.video-frame-art{
  position:absolute;
  inset:0;
  z-index:3;
  width:100%;
  height:100%;
  object-fit:cover;
  pointer-events:none;
}

.video-label{
  position:absolute;
  left:16px;
  bottom:14px;
  background:rgba(6,4,21,.68);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:950;
  color:#fff;
  backdrop-filter:blur(9px);
  z-index:4;
}

.video-tile.speaking{
  border-color:var(--ok);
  box-shadow:0 0 0 4px rgba(53,244,156,.18),0 0 34px rgba(53,244,156,.28),0 26px 86px rgba(0,0,0,.34);
}

.auth-card{
  text-align:left;
  position:relative;
  width:min(980px,100%);
  padding:0;
  overflow:hidden;
}

.auth-layout{
  display:grid;
  grid-template-columns:minmax(290px,360px) minmax(0,1fr);
  min-height:620px;
}

.auth-side{
  position:relative;
  overflow:hidden;
  padding:28px;
  background:radial-gradient(circle at 25% 12%, rgba(255,101,216,.28), transparent 26%),
    radial-gradient(circle at 78% 22%, rgba(32,228,255,.20), transparent 24%),
    linear-gradient(180deg,#18103f 0%,#0a0824 100%);
  border-right:1px solid rgba(255,255,255,.10);
}

.auth-side:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("../img/ui/grabzii-hero.png");
  background-size:cover;
  background-position:center;
  opacity:.08;
  pointer-events:none;
}

.auth-side > *{
  position:relative;
  z-index:1;
}

.auth-brand-stack{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:24px;
}

.auth-side-icon{
  width:56px;
  height:56px;
  object-fit:contain;
  border-radius:18px;
  box-shadow:0 0 24px rgba(255,101,216,.18);
}

.auth-side-logo{
  width:150px;
  object-fit:contain;
  filter:drop-shadow(0 0 18px rgba(255,101,216,.22));
}

.auth-side-copy h3{
  margin:0 0 10px;
  font-size:36px;
  line-height:.95;
  letter-spacing:-.05em;
}

.auth-side-copy p{
  margin:0;
  color:#d9d1ff;
  line-height:1.55;
  max-width:280px;
}

.auth-side-pills{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
  max-width:300px;
}

.auth-side-pills span{
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-size:12px;
  font-weight:850;
  color:#fff;
}

.auth-side-mascot{
  position:absolute;
  right:-24px;
  bottom:-8px;
  width:min(320px,76%);
  max-height:68%;
  object-fit:contain;
  filter:drop-shadow(0 24px 48px rgba(0,0,0,.32));
  pointer-events:none;
}

.auth-content{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.auth-heading{
  margin-bottom:6px;
}

.auth-heading h3{
  margin:0 0 8px;
  font-size:34px;
  letter-spacing:-.04em;
}

.auth-heading p{
  margin:0;
  color:var(--muted);
}

.auth-screen .notice{
  margin-bottom:10px;
}

.pending-card{
  width:min(460px,calc(100% - 24px));
  text-align:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:32px;
  padding:22px;
  box-shadow:var(--shadow);
  background:radial-gradient(circle at 50% 0%, rgba(255,101,216,.18), transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));
}

.incoming-grab-card{
  text-align:center;
  position:relative;
  overflow:hidden;
  padding:24px;
  background:radial-gradient(circle at 50% 0%, rgba(255,101,216,.18), transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));
}

@media (max-width:960px){
.auth-layout{
  grid-template-columns:1fr;
}
}

@media (max-width:960px){
.auth-side{
  min-height:280px;
  border-right:0;
  border-bottom:1px solid rgba(255,255,255,.10);
}
}

@media (max-width:960px){
.auth-side-copy p,.auth-side-pills{
  max-width:none;
}
}

@media (max-width:960px){
.auth-side-mascot{
  width:200px;
  right:8px;
  bottom:-10px;
  max-height:220px;
}
}

@media (max-width:760px){
.session-card{
  grid-template-columns:1fr;
  text-align:center;
}
}

@media (max-width:760px){
.session-card-art{
  margin:0 auto;
}
}

@media (max-width:760px){
.session-actions{
  justify-content:center;
}
}

@media (max-width:760px){
.video-screen-window{
  inset:12.9% 8.6% 14.5% 8.6%;
  border-radius:18px;
}
}

@media (max-width:760px){
.auth-content{
  padding:22px;
}
}

@media (max-width:760px){
.auth-side{
  padding:22px;
}
}

@media (max-width:480px){
.auth-side-copy h3{
  font-size:30px;
}
}

@media (max-width:480px){
.auth-side-mascot{
  width:165px;
  right:2px;
  bottom:-16px;
}
}

@media (max-width:480px){
.capsule-state-chip{
  font-size:9px;
}
}

.label-soft{
  color:var(--muted);
  font-weight:700;
  font-size:12px;
}

.capsule:hover,
.capsule:focus{
  transform:translate(-50%,-50%) translateY(-6px) scale(1.05)!important;
  outline:none;
}

.capsule-face{
  border-radius:999px;
  position:absolute!important;
  left:50%;
  top:48%;
  width:29px!important;
  height:20px!important;
  transform:translate(-50%,-50%);
  background:transparent!important;
  box-shadow:none!important;
}

.capsule-face:before,.capsule-face:after{
  content:"";
  position:absolute;
  top:12px;
  width:5px;
  height:7px;
  border-radius:999px;
  background:#fff;
  display:none!important;
}

.capsule-face-dot{
  position:absolute;
  border-radius:999px;
  background:#35104f!important;
  width:5px!important;
  height:6px!important;
  top:2px!important;
}

.capsule-face-smile{
  position:absolute;
  left:50%;
  margin-left:-9px;
  border:3px solid #2e1548;
  border-bottom-left-radius:12px;
  border-bottom-right-radius:12px;
  border-color:#35104f!important;
  border-top:0!important;
  border-left-color:transparent!important;
  border-right-color:transparent!important;
  width:16px!important;
  height:8px!important;
  bottom:1px!important;
}

.capsule small{
  max-width:100%;
  line-height:1.25;
  position:relative!important;
  width:100%;
  display:block;
  text-align:center;
  margin-top:1px;
  font-size:10px!important;
  color:#dcd5ff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.7);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.capsule-state-chip{
  align-items:center;
  justify-content:center;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.12);
  color:#f4f1ff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  display:none!important;
}

.capsule:hover .capsule-state-chip,
.capsule:focus .capsule-state-chip{
  display:inline-flex!important;
  position:absolute;
  left:50%;
  bottom:-24px;
  transform:translateX(-50%);
  white-space:nowrap;
  background:rgba(13,8,38,.82);
  border:1px solid rgba(32,228,255,.26);
  box-shadow:0 0 18px rgba(32,228,255,.16);
}

.claw-left{
  left:23px;
  transform:rotate(28deg);
}

.claw-right{
  right:23px;
  transform:rotate(-28deg);
}

.machine-claw.is-searching{
  animation:clawMiss .72s ease-in-out;
}

.machine-claw.is-dropping{
  animation:clawDrop .62s ease-in-out;
}

.machine-claw.is-dropping .claw-left{
  animation:clawPinchLeft .62s ease-in-out;
}

.machine-claw.is-dropping .claw-right{
  animation:clawPinchRight .62s ease-in-out;
}

@keyframes clawPinchLeft{0%,100%{transform:rotate(28deg)}50%{transform:rotate(10deg)}}

@keyframes clawPinchRight{0%,100%{transform:rotate(-28deg)}50%{transform:rotate(-10deg)}}

.claw-aim-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
}

.claw-aim-status strong{
  color:#fff;
  text-align:right;
}

.claw-pad{
  display:grid;
  grid-template-columns:58px 1fr 58px;
  grid-template-areas:". up ."
    "left drop right"
    ". down .";
  gap:8px;
  align-items:center;
}

.claw-btn{
  min-width:0;
  padding:10px 0;
  font-size:18px;
  line-height:1;
}

.claw-btn.up{
  grid-area:up;
}

.claw-btn.left{
  grid-area:left;
}

.claw-btn.right{
  grid-area:right;
}

.claw-btn.down{
  grid-area:down;
}

.control-hint{
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
  text-align:center;
}

@media (max-width:1080px){
.machine-viewport{
  min-height:600px;
  width:min(100%,560px);
}
}

@media (max-width:760px){
.machine-viewport{
  min-height:560px;
  width:min(100%,520px);
}
}

@media (max-width:760px){
.capsule{
  width:74px;
  min-height:106px!important;
}
}

@media (max-width:760px){
.capsule-art-wrap{
  width:54px!important;
  height:70px!important;
}
}

@media (max-width:760px){
.capsule small{
  display:none;
}
}

@media (max-width:760px){
.claw-head{
  width:23px;
  height:28px;
}
}

@media (max-width:760px){
.claw-arm{
  height:38px;
}
}

@media (max-width:760px){
.claw-left{
  left:18px;
}
}

@media (max-width:760px){
.claw-right{
  right:18px;
}
}

@media (max-width:480px){
.machine-viewport{
  min-height:500px;
  width:100%;
}
}

@media (max-width:480px){
.capsule{
  padding:10px;
  width:62px;
  min-height:94px!important;
}
}

@media (max-width:480px){
.capsule-art-wrap{
  width:48px!important;
  height:62px!important;
}
}

@media (max-width:480px){
.capsule strong{
  font-size:10px!important;
}
}

@media (max-width:480px){
.capsule-badge{
  font-size:9px;
  padding:4px 7px;
  display:none!important;
}
}

@media (max-width:480px){
.claw-pad{
  grid-template-columns:48px 1fr 48px;
}
}

.icon-btn,
.big-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}

.btn-icon{
  width:34px;
  height:34px;
  min-width:34px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  font-weight:800;
  color:#fff;
  background:linear-gradient(135deg, rgba(110,76,255,.95), rgba(36,209,255,.85));
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset, 0 10px 22px rgba(52,109,255,.32);
}

.btn-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  text-align:left;
  line-height:1.15;
}

.btn-copy strong{
  font-size:14px;
  color:#fff;
}

.btn-copy small{
  font-size:11px;
  color:rgba(231,235,255,.72);
}

.big-action{
  width:100%;
  justify-content:flex-start;
  padding:14px 16px;
}

.icon-btn{
  padding:10px 14px;
}

.icon-btn span:last-child{
  display:inline-block;
}

.action-enter .btn-icon,
.send-btn .btn-icon,
.chat-end-btn .btn-icon{
  background:linear-gradient(135deg, rgba(255,94,178,.94), rgba(115,98,255,.92));
}

.history-panel{
  margin-top:18px;
}

.history-list .session-card{
  opacity:.96;
}

.claw-drop{
  grid-area:drop;
  text-transform:uppercase;
  letter-spacing:.06em;
  min-height:62px;
  justify-content:flex-start;
  align-items:center;
}

.claw-drop .btn-icon{
  background:linear-gradient(135deg, rgba(255,154,80,.95), rgba(255,88,153,.9));
}

#enterGrabzoneBtn .btn-icon{
  background:linear-gradient(135deg, rgba(255,94,193,.95), rgba(83,127,255,.92));
}

.chat-stage-inner:before,
.chat-stage-inner:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  height:2px;
  background:linear-gradient(90deg, rgba(255,75,186,.75), rgba(122,86,255,.55), rgba(53,226,255,.68));
  opacity:.65;
}

.chat-glow{
  position:absolute;
  top:0;
  bottom:0;
  width:40%;
  pointer-events:none;
  opacity:.48;
}

.glow-left{
  left:0;
  background:radial-gradient(circle at 0% 12%, rgba(255,105,180,.42), transparent 46%);
}

.glow-right{
  right:0;
  background:radial-gradient(circle at 100% 10%, rgba(61,214,255,.34), transparent 45%);
}

.chat-head,
.chat-console,
.chat-actions,
.video-grid{
  position:relative;
  z-index:2;
}

.video-card:before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:28px;
  padding:1px;
  background:linear-gradient(135deg, rgba(255,100,184,.55), rgba(110,97,255,.35), rgba(63,214,255,.55));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.video-user-pill,
.video-state-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:700;
  color:#f8fbff;
  background:rgba(7,8,24,.44);
  border:1px solid rgba(255,255,255,.14);
}

.video-placeholder small{
  color:rgba(232,238,255,.64);
}

.placeholder-orb{
  width:72px;
  height:72px;
  border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.9), rgba(144,110,255,.85) 42%, rgba(72,207,255,.75));
  box-shadow:0 0 0 6px rgba(255,255,255,.04), 0 0 34px rgba(101,98,255,.35);
}

.chat-actions .icon-btn,
.chat-end-actions .icon-btn{
  min-height:50px;
}

.chat-pending-overlay,
.chat-end-overlay{
  position:absolute;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:4;
  background:rgba(4,5,19,.48);
  backdrop-filter:blur(10px);
}

.chat-pending-overlay.active,
.chat-end-overlay.active{
  display:flex;
}

.pending-card,
.chat-end-card{
  width:min(560px, 100%);
  padding:24px;
  border-radius:28px;
  text-align:center;
  background:linear-gradient(180deg, rgba(16,14,53,.96), rgba(8,8,29,.96));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 28px 56px rgba(0,0,0,.45), inset 0 0 0 1px rgba(255,255,255,.04);
}

.chat-end-card{
  width:min(640px, 100%);
}

.chat-end-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
  padding:7px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#fff;
  background:linear-gradient(135deg, rgba(255,100,170,.92), rgba(102,103,255,.88));
}

.chat-end-actions{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}

.chat-end-actions .primary,
.chat-end-actions .ghost,
.chat-actions .primary,
.chat-actions .ghost{
  min-width:190px;
}

body.chat-open .app-shell,
body.chat-open .landing-shell,
body.chat-open .topbar{
  filter:blur(4px);
  pointer-events:none;
  user-select:none;
}

@media (max-width: 1100px){
.video-grid{
  grid-template-columns:1fr;
}
}

@media (max-width: 1100px){
.video-tile{
  min-height:320px;
}
}

@media (max-width: 1100px){
.video-screen-window{
  min-height:280px;
}
}

@media (max-width: 780px){
.chat-stage{
  padding:10px;
}
}

@media (max-width: 780px){
.chat-stage-inner{
  padding:16px 12px 18px;
  border-radius:22px;
}
}

@media (max-width: 780px){
.chat-head{
  flex-direction:column;
}
}

@media (max-width: 780px){
.chat-head h2{
  font-size:28px;
}
}

@media (max-width: 780px){
.rtc-input-row{
  grid-template-columns:1fr;
}
}

@media (max-width: 780px){
.chat-actions,
  .chat-end-actions{
  flex-direction:column;
}
}

@media (max-width: 780px){
.chat-actions .primary,
  .chat-actions .ghost,
  .chat-end-actions .primary,
  .chat-end-actions .ghost{
  width:100%;
}
}

.grab-animation-layer{
  position:absolute;
  inset:0;
  z-index:12;
  pointer-events:none;
  overflow:hidden;
}

.machine-claw.is-carrying .claw-left{
  animation:clawPinchLeft 1.65s ease-in-out!important;
}

.machine-claw.is-carrying .claw-right{
  animation:clawPinchRight 1.65s ease-in-out!important;
}

.claw-pad-horizontal .claw-btn.left{
  grid-area:left;
}

.claw-pad-horizontal .claw-btn.right{
  grid-area:right;
}

.claw-pad-horizontal .claw-drop{
  grid-area:drop;
}

.claw-btn.up,.claw-btn.down{
  display:none!important;
}

.capsule.is-grabbed-source{
  opacity:.18!important;
  filter:blur(1px) grayscale(.2);
  pointer-events:none!important;
}

.capsule-rare .capsule-art{
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.38)) drop-shadow(0 0 20px rgba(32,228,255,.26));
}

.capsule-epic .capsule-art{
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.38)) drop-shadow(0 0 24px rgba(172,96,255,.28));
}

.capsule-legendary .capsule-art{
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.38)) drop-shadow(0 0 28px rgba(255,220,97,.30));
}

.capsule-face,.capsule-face-dot,.capsule-face-smile{
  display:none!important;
}

.grabbed-capsule-clone{
  position:absolute;
  left:var(--start-x);
  top:var(--start-y);
  width:116px;
  min-height:138px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:2px;
  transform:translate(-50%,-50%) scale(.95);
  opacity:0;
  filter:drop-shadow(0 24px 26px rgba(0,0,0,.42)) drop-shadow(0 0 26px rgba(255,101,216,.24));
  will-change:left,top,transform,opacity;
}

.grabbed-capsule-clone img{
  width:88px;
  height:100px;
  object-fit:contain;
}

.grabbed-capsule-clone strong{
  display:block;
  max-width:108px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  text-align:center;
  color:#fff;
  text-shadow:0 2px 8px rgba(0,0,0,.72);
}

.grabbed-capsule-clone.is-travelling{
  animation:grabbedPrizeTravel 1.62s cubic-bezier(.2,.76,.24,1) forwards;
}

@keyframes grabbedPrizeTravel{0%{left:var(--start-x);top:var(--start-y);opacity:0;transform:translate(-50%,-50%) scale(.88) rotate(0deg)}
  13%{opacity:1;left:var(--start-x);top:var(--start-y);transform:translate(-50%,-50%) scale(.94) rotate(-2deg)}
  34%{left:var(--start-x);top:24%;opacity:1;transform:translate(-50%,-50%) scale(.88) rotate(2deg)}
  62%{left:17%;top:24%;opacity:1;transform:translate(-50%,-50%) scale(.86) rotate(-5deg)}
  82%{left:17%;top:78%;opacity:1;transform:translate(-50%,-50%) scale(.82) rotate(8deg)}
  100%{left:17%;top:90%;opacity:0;transform:translate(-50%,-50%) scale(.48) rotate(14deg)}}

.empty-state-art,
.session-card-art,
.pending-card img,
.incoming-grab-art,
.profile-mascot,
.auth-side-mascot,
.safety-panel img{
  object-fit:contain;
}

.session-card-art{
  width:84px;
  height:84px;
  object-fit:contain;
  border-radius:18px;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.30));
}

.incoming-grab-art{
  width:100%;
  height:250px;
  object-fit:contain;
  margin-bottom:4px;
  max-height:280px;
  filter:drop-shadow(0 24px 38px rgba(0,0,0,.34));
}

.pending-card img{
  height:174px;
  width:100%;
  object-fit:contain;
  margin-bottom:4px;
  max-height:220px;
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.34));
}

@media (max-width:760px){
.grabbed-capsule-clone{
  width:90px;
  min-height:112px;
}
}

@media (max-width:760px){
.grabbed-capsule-clone img{
  width:68px;
  height:78px;
}
}

@media (max-width:760px){
.machine-prize-slot{
  left:7%;
  bottom:11%;
  width:22%;
  height:8%;
}
}

@media (max-width:480px){
.claw-pad-horizontal{
  grid-template-columns:48px 1fr 48px!important;
}
}

@media (max-width:480px){
.grabbed-capsule-clone{
  width:76px;
  min-height:96px;
}
}

@media (max-width:480px){
.grabbed-capsule-clone img{
  width:58px;
  height:68px;
}
}

body.is-booting .landing-shell,
body.is-booting .app-shell{
  display:none!important;
}

.boot-splash{
  display:none;
  min-height:calc(100vh - 80px);
  align-items:center;
  justify-content:center;
  padding:32px;
}

body.is-booting .boot-splash{
  display:flex;
}

.boot-card{
  width:min(360px,100%);
  text-align:center;
  padding:28px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  box-shadow:var(--shadow),0 0 42px rgba(125,85,255,.20);
}

.boot-card img{
  width:132px;
  height:132px;
  object-fit:contain;
  filter:drop-shadow(0 20px 32px rgba(0,0,0,.32));
  margin-bottom:10px;
}

.boot-card strong{
  display:block;
  font-size:22px;
  margin-bottom:6px;
  color:#fff;
}

.boot-card span{
  color:var(--muted);
  font-weight:700;
}

.account-menu{
  position:relative;
  display:inline-flex;
  align-items:center;
  z-index:40;
}

.account-trigger{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  padding:6px 12px 6px 7px;
  color:#fff;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06));
  box-shadow:0 14px 28px rgba(0,0,0,.24),0 0 22px rgba(32,228,255,.09);
  cursor:pointer;
  font-weight:900;
}

.account-trigger:hover,.account-trigger:focus{
  outline:none;
  border-color:rgba(32,228,255,.56);
  box-shadow:0 0 0 3px rgba(32,228,255,.12),0 14px 28px rgba(0,0,0,.24);
}

.account-avatar{
  width:38px;
  height:38px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.45),rgba(125,85,255,.25));
  border:1px solid rgba(255,255,255,.16);
  overflow:hidden;
}

.account-avatar img{
  width:34px;
  height:34px;
  object-fit:contain;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.22));
}

.account-name{
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.account-chevron{
  color:rgba(231,235,255,.7);
  font-size:12px;
}

.account-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  min-width:210px;
  display:none;
  padding:8px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(21,16,55,.98),rgba(9,7,31,.98));
  box-shadow:0 24px 46px rgba(0,0,0,.38),0 0 36px rgba(125,85,255,.16);
}

.account-menu.open .account-dropdown{
  display:grid;
  gap:4px;
}

.account-dropdown button{
  width:100%;
  border:0;
  border-radius:15px;
  padding:11px 12px;
  text-align:left;
  color:#f7f4ff;
  background:transparent;
  font-weight:850;
  cursor:pointer;
}

.account-dropdown button:hover,.account-dropdown button:focus{
  outline:none;
  background:rgba(255,255,255,.08);
}

.account-divider{
  height:1px;
  background:rgba(255,255,255,.10);
  margin:4px 6px;
}

.machine-panel{
  display:grid;
  gap:18px;
  align-items:start;
  grid-template-columns:minmax(0,1fr) minmax(300px,340px);
}

.machine-copy{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin:0 0 12px;
  align-items:flex-start!important;
}

.machine-glass-glow{
  position:absolute;
  inset:24.5% 17.5% 32.5% 17.5%;
  border-radius:24px;
  z-index:2;
  border:1px solid rgba(255,255,255,.18);
  background:radial-gradient(circle at 50% 58%,rgba(32,228,255,.14),transparent 48%);
  box-shadow:inset 0 0 46px rgba(32,228,255,.10),inset 0 0 90px rgba(125,85,255,.13);
  pointer-events:none!important;
}

.machine-claw{
  --claw-x:50%;
  --claw-y:20%;
  position:absolute;
  left:var(--claw-x);
  z-index:8;
  pointer-events:none;
  transition:left .16s ease, transform .18s ease!important;
  top:30.2%!important;
  width:64px!important;
  height:86px!important;
  transform:translate(-50%,-10px)!important;
  filter:drop-shadow(0 0 10px rgba(32,228,255,.25)) drop-shadow(0 10px 14px rgba(0,0,0,.36))!important;
}

.claw-cable{
  position:absolute;
  left:50%;
  width:5px;
  margin-left:-2.5px;
  border-radius:999px;
  box-shadow:0 0 12px rgba(32,228,255,.38);
  background:linear-gradient(180deg, rgba(210,230,255,.16), rgba(92,188,255,.86));
  bottom:58px!important;
  height:38px!important;
  opacity:.82!important;
}

.claw-head{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  border-radius:12px;
  background:linear-gradient(180deg,#d9edff,#5268c4 55%,#1a235b);
  border:1px solid rgba(255,255,255,.38);
  box-shadow:inset 0 2px 6px rgba(255,255,255,.38),0 0 16px rgba(50,135,255,.32);
  top:18px!important;
  width:26px!important;
  height:30px!important;
}

.claw-arm{
  position:absolute;
  width:9px;
  border-radius:999px;
  background:linear-gradient(180deg,#dff2ff,#8c95ff 45%,#2d3472);
  transform-origin:50% 0;
  box-shadow:inset 0 1px 4px rgba(255,255,255,.42),0 0 12px rgba(50,135,255,.28);
  top:44px!important;
  height:38px!important;
}

.claw-reticle{
  position:absolute;
  left:50%;
  width:38px;
  height:14px;
  transform:translateX(-50%);
  border-radius:999px;
  border:1px solid rgba(32,228,255,.36);
  box-shadow:0 0 16px rgba(32,228,255,.20);
  opacity:.8;
  top:76px!important;
}

@keyframes clawDrop{0%,100%{transform:translate(-50%,-10px)}45%{transform:translate(-50%,86px)}70%{transform:translate(-50%,82px)}}

@keyframes clawMiss{0%,100%{transform:translate(-50%,-10px)}50%{transform:translate(-50%,72px) rotate(4deg)}}

.live-capsules .empty{
  grid-column:1/-1;
  align-self:center;
  position:absolute;
  inset:8% 8%;
  pointer-events:auto;
  background:rgba(10,5,32,.58)!important;
  backdrop-filter:blur(10px);
  display:none!important;
}

.control-card{
  overflow:hidden;
}

.claw-control-panel{
  display:grid;
  gap:10px;
  padding:12px;
  margin:12px 0;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.14));
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px!important;
}

.claw-pad-horizontal{
  grid-template-columns:58px 1fr 58px!important;
  grid-template-areas:"left drop right"!important;
  align-items:center!important;
}

.claw-drop .btn-copy small{
  font-size:10px!important;
  line-height:1.05;
}

.history-panel,.incoming-panel{
  overflow:hidden;
}

@media (max-width:1120px){
.machine-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:1120px){
.machine-viewport{
  max-height:none;
}
}

@media (max-width:760px){
.account-name{
  max-width:100px;
}
}

@media (max-width:760px){
.account-dropdown{
  right:-8px;
}
}

@media (max-width:760px){
.machine-claw{
  top:30.2%!important;
  width:56px!important;
  height:78px!important;
}
}

@media (max-width:760px){
.claw-cable{
  height:32px!important;
  bottom:54px!important;
}
}

@media (max-width:760px){
.machine-empty-inline{
  width:min(210px,76%);
  padding:10px 12px;
}
}

@media (max-width:760px){
.machine-empty-inline img{
  width:50px;
  height:50px;
}
}

body.is-booting .nav{
  visibility:hidden;
}

*::-webkit-scrollbar{
  width:12px;
  height:12px;
}

*::-webkit-scrollbar-track{
  background:rgba(8,7,30,.82);
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}

*::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(255,101,216,.88),rgba(45,216,255,.88));
  border-radius:999px;
  border:3px solid rgba(8,7,30,.94);
  box-shadow:0 0 16px rgba(45,216,255,.24);
}

*::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,rgba(255,138,226,.98),rgba(74,229,255,.98));
}

*::-webkit-scrollbar-corner{
  background:transparent;
}

select{
  color-scheme:dark;
  appearance:none;
  -webkit-appearance:none;
  background-image:linear-gradient(45deg, transparent 50%, rgba(231,235,255,.86) 50%),
    linear-gradient(135deg, rgba(231,235,255,.86) 50%, transparent 50%),
    linear-gradient(135deg, rgba(255,101,216,.34), rgba(32,228,255,.18))!important;
  background-position:calc(100% - 22px) 50%,
    calc(100% - 14px) 50%,
    100% 0!important;
  background-size:8px 8px,8px 8px,48px 100%!important;
  background-repeat:no-repeat!important;
  padding-right:58px!important;
}

select option{
  background:#100d32;
  color:#f8f4ff;
}

.field select:hover,.field input:hover,.field textarea:hover{
  border-color:rgba(255,255,255,.22);
}

.site-footer div{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.site-footer strong{
  color:#fff;
  font-size:18px;
}

.site-footer a:hover,.site-footer a:focus{
  outline:none;
  border-color:rgba(32,228,255,.45);
  box-shadow:0 0 0 3px rgba(32,228,255,.10);
  color:#fff;
}

body.chat-open .site-footer{
  filter:blur(4px);
  pointer-events:none;
  user-select:none;
}

.info-card{
  position:relative;
  width:min(820px,100%);
  max-height:min(86vh,860px);
  overflow:auto;
  padding:26px;
}

.modal-close{
  position:absolute;
  top:16px;
  right:16px;
  width:42px;
  height:42px;
  border:0;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,rgba(255,101,216,.92),rgba(125,85,255,.9));
  box-shadow:0 12px 28px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.12) inset;
  cursor:pointer;
}

.info-card-head{
  display:grid;
  grid-template-columns:140px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding-right:46px;
  margin-bottom:16px;
}

.info-card-head img{
  width:140px;
  height:140px;
  object-fit:contain;
  filter:drop-shadow(0 18px 32px rgba(0,0,0,.35));
}

.info-card-head h2{
  font-size:clamp(30px,4vw,48px);
  line-height:1;
  margin:2px 0 8px;
  letter-spacing:-.045em;
}

.info-modal-body{
  display:grid;
  gap:14px;
  margin-top:12px;
}

.info-step-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.info-step,.info-section{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  padding:16px;
}

.info-step b,.info-section b{
  display:block;
  color:#fff;
  margin-bottom:6px;
  font-size:15px;
}

.info-step p,.info-section p{
  margin:0;
  color:var(--muted);
  line-height:1.48;
  font-size:14px;
}

.info-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:8px;
}

.info-pill-row span{
  border-radius:999px;
  border:1px solid rgba(32,228,255,.22);
  background:rgba(32,228,255,.07);
  padding:8px 10px;
  font-size:12px;
  font-weight:850;
  color:#dffaff;
}

.info-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
  margin-top:18px;
}

.chat-head h2{
  line-height:.95;
  letter-spacing:-.04em;
  margin:2px 0 4px;
  font-size:clamp(28px,2.6vw,42px)!important;
}

@media (max-width:1100px){
.chat-stage.active{
  overflow:auto!important;
  align-items:flex-start;
}
}

@media (max-width:1100px){
.video-tile{
  min-height:260px!important;
}
}

@media (max-width:1100px){
.video-screen-window{
  min-height:226px!important;
}
}

@media (max-width:780px){
.site-footer{
  flex-direction:column;
  align-items:flex-start;
}
}

@media (max-width:780px){
.site-footer nav{
  justify-content:flex-start;
}
}

@media (max-width:780px){
.info-card-head{
  grid-template-columns:1fr;
  padding-right:34px;
}
}

@media (max-width:780px){
.info-card-head img{
  width:112px;
  height:112px;
}
}

@media (max-width:780px){
.info-step-grid{
  grid-template-columns:1fr;
}
}

@media (max-width:780px){
.chat-stage.active{
  padding:8px!important;
}
}

@media (max-width:780px){
.chat-stage-inner{
  overflow:auto!important;
}
}

@media (max-width:780px){
.chat-console{
  min-height:320px!important;
}
}

@media (max-width:780px){
.rtc-transcript{
  min-height:210px!important;
}
}

@media (max-width:780px){
.chat-actions{
  padding-bottom:12px!important;
}
}

.policy-link{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.legal-page{
  padding:46px 0 60px;
}

.legal-hero{
  padding:34px;
  margin-bottom:18px;
  display:grid;
  gap:10px;
}

.legal-hero h1{
  margin:0;
  font-size:clamp(42px,7vw,76px);
  line-height:.92;
  letter-spacing:-.065em;
}

.legal-hero p{
  max-width:920px;
  font-size:17px;
  line-height:1.65;
  color:var(--muted);
  margin:0;
}

.legal-card{
  padding:30px;
}

.legal-card h2{
  margin:28px 0 8px;
  font-size:26px;
  letter-spacing:-.025em;
}

.legal-card h2:first-child{
  margin-top:0;
}

.legal-card p{
  color:var(--muted);
  line-height:1.7;
  margin:0 0 12px;
}

.legal-card a{
  color:#b9f5ff;
}

@media (max-width:760px){
.legal-page{
  padding-top:24px;
}
}

@media (max-width:760px){
.legal-hero,.legal-card{
  padding:22px;
}
}

@media (max-width:760px){
.legal-card h2{
  font-size:22px;
}
}

@media (max-width:760px){
.legal-hero p{
  font-size:15px;
}
}

.brand-icon{
  width:48px;
  height:48px;
  border-radius:18px;
  place-items:center;
  background:rgba(255,255,255,.08);
  box-shadow:0 0 28px rgba(255,101,216,.18);
  overflow:hidden;
  display:none!important;
}

.nav-icon-btn{
  position:relative;
  display:inline-grid;
  place-items:center;
  min-width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  color:#fff;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}

.nav-icon-btn b{
  position:absolute;
  right:-4px;
  top:-5px;
  min-width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff5fc8,#35dfff);
  font-size:11px;
  color:#fff;
  border:2px solid #0b0824;
}

.notification-menu{
  position:relative;
  z-index:45;
  display:inline-flex;
}

.notification-dropdown{
  position:absolute;
  right:0;
  top:calc(100% + 12px);
  width:min(380px,calc(100vw - 24px));
  max-height:540px;
  overflow:auto;
  display:none;
  padding:12px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(13,10,41,.96);
  box-shadow:0 24px 60px rgba(0,0,0,.38);
  backdrop-filter:blur(18px);
}

.notification-menu.open .notification-dropdown{
  display:grid;
  gap:10px;
}

.notification-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:4px 4px 8px;
}

.notification-head button{
  border:0;
  background:rgba(255,255,255,.08);
  border-radius:999px;
  color:#fff;
  padding:7px 10px;
  cursor:pointer;
  font-size:12px;
  font-weight:800;
}

.notification-list{
  display:grid;
  gap:8px;
}

.notification-item{
  display:grid;
  gap:4px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  padding:12px;
}

.notification-item.read{
  opacity:.7;
}

.notification-item strong{
  font-size:13px;
}

.notification-item span{
  font-size:12px;
  color:var(--muted);
  line-height:1.35;
}

.notification-actions{
  display:flex;
  gap:8px;
  margin-top:8px;
}

.chat-stage-inner:before,.chat-stage-inner:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  height:2px;
  background:linear-gradient(90deg,rgba(255,101,216,.9),rgba(32,228,255,.88));
  opacity:.75;
}

.chat-status-line p{
  margin:0;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.chat-end-btn{
  min-width:0;
  justify-self:end;
}

.participant-avatar{
  width:28px;
  height:28px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
  display:grid;
  place-items:center;
}

.participant-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.video-tile:before{
  background:radial-gradient(circle at 50% 30%,rgba(125,85,255,.25),transparent 42%),linear-gradient(135deg,rgba(255,101,216,.08),rgba(32,228,255,.08));
  z-index:0;
  content:"";
  position:absolute;
  inset:10px;
  border-radius:20px;
  box-shadow:0 0 0 1px rgba(106,208,255,.2), 0 0 40px rgba(84,82,255,.18) inset;
  pointer-events:none;
  display:none!important;
}

.video-placeholder{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  color:rgba(232,238,255,.9);
  z-index:1!important;
}

.chat-alert-stack{
  display:grid;
  gap:8px;
}

.chat-alert-card{
  border-radius:16px;
  border:1px solid rgba(32,228,255,.25);
  background:linear-gradient(135deg,rgba(32,228,255,.12),rgba(255,101,216,.10));
  padding:10px 12px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color:#fff;
  transition:opacity .3s,transform .3s;
}

.chat-alert-card.private{
  border-color:rgba(255,226,109,.32);
  background:linear-gradient(135deg,rgba(255,226,109,.12),rgba(255,101,216,.08));
}

.chat-alert-card strong{
  font-size:13px;
}

.chat-alert-card span{
  font-size:12px;
  color:var(--muted);
}

.chat-alert-card.soft-hide{
  opacity:0;
  transform:translateY(-4px);
}

.rtc-line b{
  font-size:12px;
  opacity:.88;
  margin-right:4px;
}

.link-preview{
  margin-top:8px;
  width:min(420px,100%);
  display:grid;
  gap:3px;
  text-align:left;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#fff;
  padding:12px;
  cursor:pointer;
}

.link-preview span{
  color:var(--muted);
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
}

.youtube-preview iframe{
  width:100%;
  aspect-ratio:16/9;
  border:0;
  border-radius:12px;
  margin-top:8px;
  background:#000;
  pointer-events:none;
}

.chat-tool-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:10px;
}

.chat-tool-pane{
  display:none;
}

.chat-tool-pane.active{
  display:grid;
  gap:10px;
}

.emoji-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  max-height:120px;
  overflow:auto;
}

.emoji-list button{
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.06);
  font-size:22px;
  cursor:pointer;
}

.brand-emote-list button{
  display:flex;
  align-items:center;
  gap:8px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.06);
  color:#fff;
  padding:8px;
  cursor:pointer;
}

.brand-emote-list img{
  width:42px;
  height:42px;
  object-fit:contain;
}

.gif-results{
  min-height:44px;
  color:var(--muted);
}

.profile-modal-card,.link-warning-card{
  position:relative;
  width:min(620px,100%);
  padding:24px;
}

.profile-modal-head img{
  width:110px;
  height:110px;
  object-fit:contain;
  border-radius:30px;
  background:rgba(255,255,255,.06);
  padding:8px;
}

.profile-modal-head h2{
  margin:2px 0 6px;
  font-size:40px;
  line-height:1;
}

.profile-modal-bio{
  line-height:1.6;
}

.profile-modal-tags{
  margin-top:14px;
}

.profile-modal-tags h3{
  margin:0 0 8px;
}

.tag-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.tag-row span{
  display:inline-flex;
  border-radius:999px;
  border:1px solid rgba(32,228,255,.22);
  background:rgba(32,228,255,.07);
  padding:7px 10px;
  font-size:12px;
  font-weight:850;
  color:#dffaff;
}

.link-warning-url{
  word-break:break-all;
  border-radius:14px;
  background:rgba(0,0,0,.24);
  padding:10px;
  color:#fff;
}

@media (max-width:980px){
.chat-stage.active{
  overflow:auto!important;
}
}

@media (max-width:980px){
.chat-stage-inner{
  height:auto!important;
  min-height:calc(100vh - 16px)!important;
  grid-template-rows:auto auto minmax(280px,1fr) auto!important;
}
}

@media (max-width:980px){
.chat-head{
  grid-template-columns:1fr auto!important;
}
}

@media (max-width:980px){
.chat-logo{
  width:150px;
}
}

@media (max-width:980px){
.chat-status-line{
  grid-column:1 / -1;
}
}

@media (max-width:980px){
.video-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:980px){
.video-card{
  height:330px!important;
}
}

@media (max-width:980px){
.chat-actions{
  height:auto!important;
  flex-wrap:wrap;
}
}

@media (max-width:980px){
.brand-copy img{
  width:142px!important;
}
}

@media (max-width:640px){
.topbar-inner{
  gap:10px;
}
}

@media (max-width:640px){
.nav{
  gap:6px;
}
}

@media (max-width:640px){
.nav .pill{
  display:none!important;
}
}

@media (max-width:640px){
.account-name{
  display:none;
}
}

@media (max-width:640px){
.chat-stage-inner{
  padding:12px!important;
}
}

@media (max-width:640px){
.video-card{
  height:280px!important;
}
}

@media (max-width:640px){
.rtc-input-row{
  grid-template-columns:auto minmax(0,1fr)!important;
}
}

@media (max-width:640px){
.send-btn span:last-child{
  display:none;
}
}

@media (max-width:640px){
.profile-modal-head{
  grid-template-columns:1fr;
}
}

@media (max-width:640px){
.profile-modal-head img{
  width:90px;
  height:90px;
}
}

@media (max-width:640px){
.site-footer{
  border-radius:0!important;
  margin-left:0!important;
  margin-right:0!important;
  width:100%!important;
}
}

.capsule:hover{
  border-color:rgba(32,228,255,.82);
  box-shadow:0 0 0 3px rgba(32,228,255,.10),0 0 34px rgba(32,228,255,.23),0 22px 54px rgba(0,0,0,.34);
  transform:translate(-50%,-50%)!important;
}

.capsule-avatar-empty{
  font-family:Arial,sans-serif;
  color:#fff;
  background:radial-gradient(circle at 35% 25%,#fff,#9a78ff 44%,#32dfff);
}

table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 8px;
}

th{
  text-align:left;
  color:#d9d1ff;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  padding:0 10px;
}

td{
  background:rgba(255,255,255,.045);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  padding:10px;
  vertical-align:top;
}

td:first-child{
  border-left:1px solid rgba(255,255,255,.08);
  border-radius:14px 0 0 14px;
}

td:last-child{
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0 14px 14px 0;
}

.inline-admin-form input,.inline-admin-form select,.admin-form-grid input,.admin-form-grid select{
  min-height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(0,0,0,.24);
  color:#fff;
  padding:8px 10px;
}

.admin-form-grid button{
  min-height:42px;
}

.admin-form-grid label{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-weight:800;
}

.mini-btn{
  min-height:34px;
  padding:7px 11px!important;
  font-size:12px!important;
}

.notice{
  line-height:1.45;
  border-radius:16px;
  border:1px solid rgba(255,226,109,.24);
  background:rgba(255,226,109,.08);
  color:#fff;
  padding:12px 14px;
  margin-bottom:10px;
}

@media (max-width:900px){
.admin-shell{
  grid-template-columns:1fr;
}
}

@media (max-width:900px){
.admin-nav{
  position:relative;
  top:auto;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
}

@media (max-width:900px){
.admin-nav h2{
  grid-column:1/-1;
}
}

[data-account-action="admin"][hidden]{
  display:none!important;
}

.notification-item[data-notification-type="friend_accepted"] .notification-actions,
.notification-item[data-notification-type="friend_declined"] .notification-actions,
.notification-item:not([data-notification-type="friend_request"]) .notification-actions{
  display:none!important;
}

.chat-stage .video-grid{
  align-items:stretch!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
}

.chat-stage .video-card{
  height:clamp(330px,42vh,540px)!important;
  min-height:0!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
}

.chat-stage .video-tile{
  height:100%!important;
  min-height:0!important;
  display:block!important;
  padding:14px!important;
}

.chat-stage .video-screen-window{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  display:block!important;
}

.chat-stage .video-screen-window video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.02)!important;
  background:#070821!important;
}

@media (max-width:980px){
.chat-stage .video-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:980px){
.chat-stage .video-card{
  height:330px!important;
}
}

@media (max-width:980px){
.site-footer-inner{
  flex-direction:column!important;
  align-items:flex-start!important;
}
}

@media (max-width:980px){
.site-footer nav{
  justify-content:flex-start!important;
}
}

.role-choice-panel{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);
  gap:18px;
  align-items:center;
  padding:24px;
  margin-bottom:2px;
}

.role-choice-copy h2{
  margin:4px 0 8px;
  font-size:clamp(30px,4vw,48px);
  line-height:.95;
  letter-spacing:-.04em;
}

.role-choice-copy p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.55;
}

.role-choice-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.role-card{
  border:1px solid rgba(255,255,255,.14);
  border-radius:26px;
  min-height:138px;
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:18px;
  color:#fff;
  text-align:left;
  cursor:pointer;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045));
  box-shadow:0 18px 50px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.04);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.role-card:hover,.role-card:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(32,228,255,.45);
  box-shadow:0 22px 60px rgba(0,0,0,.30),0 0 34px rgba(32,228,255,.14);
}

.role-icon{
  width:70px;
  height:70px;
  border-radius:22px;
  display:grid;
  place-items:center;
  font-size:28px;
  font-weight:950;
  background:linear-gradient(135deg,rgba(255,101,216,.95),rgba(32,228,255,.92));
  box-shadow:0 0 30px rgba(103,126,255,.32);
}

.role-card strong{
  display:block;
  font-size:22px;
  letter-spacing:-.02em;
  margin-bottom:6px;
}

.role-card small{
  display:block;
  color:rgba(231,235,255,.76);
  line-height:1.35;
  font-weight:750;
}

.role-card-grabzone .role-icon{
  background:linear-gradient(135deg,rgba(255,226,109,.94),rgba(255,101,216,.86),rgba(49,209,255,.9));
}

.app-shell[data-dashboard-role="home"] .machine-workspace,
.app-shell[data-dashboard-role="home"] .grabzone-wait-view{
  display:none!important;
}

.app-shell[data-dashboard-role="home"] .sidebar + .machine-workspace{
  display:none!important;
}

.app-shell[data-dashboard-role="grabber"] .role-choice-panel{
  display:none!important;
}

.app-shell[data-dashboard-role="grabber"] .sidebar{
  display:none!important;
}

.app-shell[data-dashboard-role="grabber"] .dashboard{
  grid-template-columns:1fr;
}

.app-shell[data-dashboard-role="grabber"] .machine-workspace{
  display:block!important;
}

.app-shell[data-dashboard-role="grabber"] .grabzone-wait-view{
  display:none!important;
}

.app-shell[data-dashboard-role="grabber"] .machine-panel{
  grid-template-columns:minmax(0,1.55fr) minmax(320px,380px);
}

.app-shell[data-dashboard-role="grabber"] .machine-viewport{
  min-height:760px;
}

.app-shell[data-dashboard-role="grabber"] .machine-toolbar{
  grid-template-columns:minmax(0,1fr) auto;
}

.app-shell[data-dashboard-role="grabzone"] .role-choice-panel,
.app-shell[data-dashboard-role="grabzone"] .machine-workspace{
  display:none!important;
}

.app-shell[data-dashboard-role="grabzone"] .sidebar{
  display:none!important;
}

.app-shell[data-dashboard-role="grabzone"] .dashboard{
  grid-template-columns:1fr;
}

.app-shell[data-dashboard-role="grabzone"] .grabzone-wait-view{
  display:block!important;
  grid-column:1 / -1;
  padding:24px;
}

.grabzone-wait-copy h2{
  margin:4px 0 8px;
  font-size:clamp(34px,5vw,62px);
  line-height:.92;
  letter-spacing:-.055em;
}

.grabzone-wait-copy p{
  margin:0 0 18px;
  color:var(--muted);
  font-size:17px;
  line-height:1.55;
  max-width:860px;
}

.grabzone-spectator-machine .machine-art{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:1;
}

.grabzone-spectator-machine .machine-glass-glow{
  z-index:2;
}

.spectator-claw{
  position:absolute;
  top:25%;
  left:45%;
  width:70px;
  height:105px;
  z-index:4;
  animation:spectatorClawMove 5.5s ease-in-out infinite;
}

.spectator-claw-two{
  animation-delay:-2.2s;
  top:30%;
  left:58%;
  opacity:.8;
}

.spectator-claw span{
  display:block;
  width:56px;
  height:66px;
  margin:28px auto 0;
  border-radius:20px;
  background:linear-gradient(180deg,#dff8ff,#826dff);
  box-shadow:0 0 18px rgba(32,228,255,.35);
}

.spectator-claw:before{
  content:"";
  position:absolute;
  left:50%;
  top:-70px;
  width:4px;
  height:105px;
  margin-left:-2px;
  background:linear-gradient(180deg,rgba(32,228,255,.15),rgba(32,228,255,.85));
  border-radius:999px;
}

.spectator-capsule-self{
  position:absolute;
  left:50%;
  top:56%;
  transform:translate(-50%,-50%);
  z-index:5;
  display:grid;
  place-items:center;
  gap:8px;
  text-align:center;
}

.spectator-capsule-self img{
  width:140px;
  height:160px;
  object-fit:contain;
  filter:drop-shadow(0 22px 34px rgba(0,0,0,.34));
}

.spectator-capsule-self strong{
  color:#fff;
  text-shadow:0 2px 10px rgba(0,0,0,.65);
}

.grabzone-wait-side{
  display:grid;
  align-content:start;
  gap:14px;
}

.grabzone-wait-side .icon-btn{
  width:100%;
  justify-content:flex-start;
}

@keyframes spectatorClawMove{0%,100%{transform:translateX(-120px) translateY(0)}35%{transform:translateX(80px) translateY(4px)}55%{transform:translateX(80px) translateY(70px)}72%{transform:translateX(-40px) translateY(70px)}}

.control-card #enterGrabzoneBtn,.control-card #refreshMachineBtn,.control-card #leaveGrabzoneBtn{
  display:none!important;
}

.machine-prize-slot{
  position:absolute;
  z-index:7;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(9,7,33,.24), rgba(4,3,17,.78));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 12px 24px rgba(0,0,0,.42), 0 0 26px rgba(32,228,255,.14);
  opacity:.72;
  left:20.3%!important;
  bottom:6.5%!important;
  width:21%!important;
  height:14.6%!important;
  border-radius:22px!important;
}

.machine-prize-slot:before{
  content:"";
  position:absolute;
  background:linear-gradient(90deg, rgba(255,101,216,.24), rgba(32,228,255,.22));
  box-shadow:0 0 18px rgba(32,228,255,.14);
  inset:18% 10%!important;
  border-radius:999px!important;
}

.machine-prize-slot span{
  position:absolute;
  left:50%;
  bottom:8%;
  transform:translateX(-50%);
  font-weight:900;
  text-transform:uppercase;
  color:rgba(232,236,255,.55);
  white-space:nowrap;
  opacity:.78;
  font-size:10px!important;
  letter-spacing:.08em!important;
}

.site-footer-copy{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  gap:10px!important;
  text-align:left!important;
}

.site-footer-copy strong{
  color:#fff!important;
  font-size:16px!important;
  line-height:1!important;
  white-space:nowrap!important;
}

.site-footer-copy span{
  font-size:14px!important;
  line-height:1.25!important;
  white-space:normal!important;
}

.site-footer a{
  color:#e8e2ff;
  text-decoration:none;
  font-size:13px;
  font-weight:850;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
  border-radius:999px;
  padding:8px 11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}

.video-screen-window{
  z-index:1;
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  aspect-ratio:auto!important;
  place-items:center!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#070821!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 16px 30px rgba(0,0,0,.28)!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
}

.video-screen-window video{
  display:block;
  position:absolute!important;
  inset:0!important;
  border-radius:20px!important;
  background:#070821!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:none!important;
}

.chat-stage .video-placeholder{
  pointer-events:none;
}

.chat-stage .video-screen-window video[src=""] + .video-placeholder{
  display:flex;
}

@media (max-width:1100px){
.role-choice-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:1100px){
.role-choice-actions{
  grid-template-columns:1fr;
}
}

@media (max-width:1100px){
.app-shell[data-dashboard-role="home"] .sidebar{
  grid-column:auto;
}
}

@media (max-width:1100px){
.grabzone-wait-grid,.app-shell[data-dashboard-role="grabber"] .machine-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:1100px){
.grabzone-spectator-machine{
  min-height:560px;
}
}

@media (max-width:1100px){
.app-shell[data-dashboard-role="grabber"] .machine-viewport{
  min-height:640px;
}
}

@media (max-width:820px){
.site-footer-inner{
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:14px 0!important;
}
}

@media (max-width:820px){
.site-footer-copy{
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:3px!important;
}
}

@media (max-width:820px){
.site-footer nav{
  width:100%!important;
  justify-content:flex-start!important;
}
}

@media (max-width:820px){
.chat-stage-inner{
  grid-template-rows:auto auto minmax(300px,1fr) auto!important;
}
}

@media (max-width:820px){
.video-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:820px){
.video-card{
  height:330px!important;
}
}

@media (max-width:820px){
.role-card{
  grid-template-columns:54px minmax(0,1fr);
  min-height:112px;
}
}

@media (max-width:820px){
.role-icon{
  width:54px;
  height:54px;
  border-radius:18px;
}
}

@media (max-width:820px){
.role-card strong{
  font-size:18px;
}
}

.app-shell[data-dashboard-role="home"] .sidebar>.ghost{
  grid-column:1 / -1;
  justify-self:start;
}

@media (max-width:900px){
.app-shell[data-dashboard-role="home"] .sidebar{
  grid-template-columns:1fr!important;
}
}

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

.landing-shell, .app-shell{
  flex:1 0 auto;
}

.app-shell.active{
  display:block;
  flex:1 0 auto;
}

.sidebar > #logoutBtn{
  display:none!important;
}

.profile-photo-upload{
  display:grid;
  grid-template-columns:74px minmax(0, 1fr);
  gap:12px;
  align-items:center;
}

.profile-photo-upload input[type=file]{
  width:100%;
  min-height:44px;
  padding:10px;
  border-radius:16px;
  background:rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.12);
  color:var(--muted);
}

.field-help{
  margin:7px 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.push-optin-card{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:rgba(255,255,255,.045);
}

.push-optin-card .icon-btn{
  width:100%;
  justify-content:flex-start;
}

.push-optin-card[hidden]{
  display:none!important;
}

@media (max-width:720px){
.site-footer-inner{
  flex-direction:column!important;
  align-items:flex-start!important;
  min-height:auto!important;
}
}

@media (max-width:720px){
.profile-photo-upload{
  grid-template-columns:1fr;
}
}

@media (max-width:720px){
.profile-photo-upload img{
  width:88px;
  height:88px;
}
}

.app-shell[data-dashboard-role="home"] .dashboard{
  grid-template-columns:minmax(280px,340px) minmax(0,1fr)!important;
  align-items:start!important;
}

.app-shell[data-dashboard-role="home"] .role-choice-panel{
  display:grid!important;
  grid-column:2!important;
  grid-row:1!important;
}

.app-shell[data-dashboard-role="home"] .sidebar{
  grid-template-columns:minmax(260px,320px) minmax(0,1fr);
  gap:18px!important;
  align-items:start!important;
  grid-column:1!important;
  grid-row:1!important;
  position:static!important;
  display:block!important;
}

.app-shell[data-dashboard-role="home"] .profile-form{
  display:none!important;
}

.app-shell[data-dashboard-role="home"] .profile-card{
  display:block!important;
}

.app-shell[data-dashboard-role="profile"] .dashboard{
  grid-template-columns:minmax(0,820px)!important;
  justify-content:center!important;
}

.app-shell[data-dashboard-role="profile"] .role-choice-panel,
.app-shell[data-dashboard-role="profile"] .machine-workspace,
.app-shell[data-dashboard-role="profile"] .grabzone-wait-view,
.app-shell[data-dashboard-role="profile"] .profile-card{
  display:none!important;
}

.app-shell[data-dashboard-role="profile"] .sidebar{
  grid-column:1/-1!important;
  position:static!important;
  display:block!important;
}

.app-shell[data-dashboard-role="profile"] .profile-form{
  display:grid!important;
}

.profile-edit-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:4px;
}

.profile-edit-head h3{
  margin:2px 0 0!important;
  font-size:28px!important;
  line-height:1!important;
}

.dashboard-card-actions{
  margin-top:14px;
  display:flex;
  justify-content:center;
}

.dashboard-card-actions .mini-btn{
  min-width:132px;
  justify-content:center;
}

.profile-photo-upload img{
  width:74px;
  height:74px;
  border-radius:24px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 30px rgba(0,0,0,.24);
  object-fit:cover!important;
}

.avatar-crop-card{
  position:relative;
  width:min(520px,100%);
  padding:24px!important;
}

.avatar-crop-heading h2{
  margin:3px 0 8px;
  font-size:30px;
  line-height:1;
  letter-spacing:-.035em;
}

.avatar-crop-heading p{
  margin:0 0 14px;
}

.avatar-crop-stage{
  position:relative;
  width:min(320px,80vw);
  height:min(320px,80vw);
  margin:0 auto 14px;
  border-radius:34px;
  overflow:hidden;
  background:rgba(0,0,0,.36);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 20px 60px rgba(0,0,0,.32);
  touch-action:none;
  cursor:grab;
}

.avatar-crop-stage:active{
  cursor:grabbing;
}

.avatar-crop-stage img{
  position:absolute;
  left:50%;
  top:50%;
  max-width:none;
  max-height:none;
  width:auto;
  height:auto;
  transform-origin:center center;
  user-select:none;
  pointer-events:none;
}

.avatar-crop-mask{
  position:absolute;
  inset:22px;
  border:2px solid rgba(32,228,255,.78);
  border-radius:30px;
  box-shadow:0 0 0 999px rgba(5,3,18,.34),0 0 28px rgba(32,228,255,.22);
  pointer-events:none;
}

.avatar-zoom-label{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:center;
  font-weight:900;
  color:#efe9ff;
}

.avatar-zoom-label input{
  width:100%;
}

.avatar-crop-actions{
  justify-content:flex-end;
  margin-bottom:0!important;
}

.machine-viewport,.grabzone-spectator-machine{
  aspect-ratio:3 / 3.75;
  min-height:0!important;
  height:auto!important;
  max-height:none;
  background:linear-gradient(180deg,#1c1556,#080522)!important;
}

.machine-art{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  filter:saturate(1.06) contrast(1.03) drop-shadow(0 28px 48px rgba(0,0,0,.35));
  z-index:1;
  object-fit:contain!important;
  opacity:1!important;
}

.machine-interaction-layer{
  overflow:hidden!important;
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
}

.capsule-avatar-photo{
  z-index:2!important;
}

.grabzone-spectator-machine{
  position:relative;
  min-height:720px;
  background:radial-gradient(circle at 50% 22%,rgba(32,228,255,.16),transparent 38%),linear-gradient(180deg,rgba(31,17,85,.78),rgba(9,6,36,.96));
  display:grid;
  place-items:center;
  border-radius:38px!important;
  overflow:hidden!important;
  box-shadow:var(--shadow),var(--glow)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}

.nudge-pad{
  display:grid;
  grid-template-columns:repeat(3,44px);
  grid-template-areas:". up ." "left . right" ". down .";
  gap:8px;
  justify-content:center;
}

.nudge-pad [data-nudge="0,-1"]{
  grid-area:up;
}

.nudge-pad [data-nudge="-1,0"]{
  grid-area:left;
}

.nudge-pad [data-nudge="1,0"]{
  grid-area:right;
}

.nudge-pad [data-nudge="0,1"]{
  grid-area:down;
}

.nudge-pad button{
  width:44px;
  height:40px;
  justify-content:center;
  padding:0!important;
}

.chat-stage{
  overflow:hidden;
  position:fixed;
  inset:0;
  display:none;
  z-index:80;
  background:radial-gradient(circle at top left, rgba(151,58,209,.26), transparent 34%), radial-gradient(circle at top right, rgba(41,190,255,.22), transparent 28%), linear-gradient(180deg, #11072a 0%, #07041a 100%);
  padding:10px 12px!important;
}

.chat-logo{
  display:block;
  filter:drop-shadow(0 8px 18px rgba(74,202,255,.26));
  width:150px!important;
  max-height:46px!important;
  object-fit:contain!important;
}

.chat-status-line{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.chat-status-line .muted{
  white-space:normal;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.video-card{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03), 0 24px 42px rgba(6,4,25,.36);
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  padding:14px!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(22,15,68,.78),rgba(7,5,29,.92))!important;
  height:100%!important;
  min-height:210px!important;
  overflow:hidden!important;
}

.participant-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.28);
  border-radius:999px;
  color:#fff;
  padding:5px 10px 5px 6px;
  cursor:pointer;
  font-weight:900;
  font-size:13px;
  min-width:0!important;
  max-width:70%!important;
  overflow:hidden!important;
}

.participant-chip span:last-child{
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.video-state-pill{
  color:rgba(231,237,255,.8);
  height:30px;
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  font-size:12px!important;
  padding:0 10px!important;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}

.chat-tools{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(10,8,35,.92);
  padding:12px;
  box-shadow:0 18px 44px rgba(0,0,0,.28);
  max-height:170px!important;
  overflow:auto!important;
}

.brand-emote-list{
  display:grid;
  gap:8px;
  grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important;
}

.brand-emote-list button span{
  line-height:1.1;
}

.rtc-input-row{
  margin-top:10px;
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:10px!important;
  margin:0!important;
  align-items:center!important;
}

.message-input-shell{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:8px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  padding:0 12px;
  min-height:54px;
}

.message-input-shell input{
  flex:1;
  outline:none;
  color:#fff;
  font-size:15px;
  border:0!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
  min-width:0;
}

.message-input-icon{
  font-size:18px;
  color:#9bdfff;
}

.send-btn{
  white-space:nowrap;
}

.inline-zii-emote{
  display:inline-flex;
  align-items:center;
  gap:5px;
  vertical-align:middle;
  margin:0 2px;
  padding:2px 7px 2px 3px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-weight:900;
}

.inline-zii-emote img{
  width:26px;
  height:26px;
  object-fit:contain;
}

.inline-zii-emote b{
  font-size:11px;
  color:#e9e4ff;
}

.chat-actions{
  bottom:0;
  padding-top:10px;
  flex:0 0 auto!important;
  margin-top:0!important;
  margin:0!important;
  display:flex!important;
  justify-content:center!important;
  gap:12px!important;
  position:relative!important;
  background:transparent!important;
  z-index:3!important;
  align-items:center!important;
  border-top:0!important;
  height:auto!important;
  min-height:56px!important;
  padding:6px 0!important;
  flex-wrap:wrap!important;
}

.chat-end-overlay{
  padding:14px!important;
}

@media (max-width:1100px){
.app-shell[data-dashboard-role="home"] .dashboard{
  grid-template-columns:1fr!important;
}
}

@media (max-width:1100px){
.app-shell[data-dashboard-role="home"] .role-choice-panel,.app-shell[data-dashboard-role="home"] .sidebar{
  grid-column:1!important;
  grid-row:auto!important;
}
}

@media (max-width:1100px){
.machine-viewport,.grabzone-spectator-machine{
  aspect-ratio:3 / 3.75;
}
}

@media (max-width:1100px){
.chat-stage-inner{
  height:auto!important;
  min-height:calc(100vh - 20px)!important;
  overflow:auto!important;
}
}

@media (max-width:1100px){
.video-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:1100px){
.video-card{
  height:300px!important;
}
}

@media (max-width:1100px){
.chat-console{
  min-height:260px!important;
}
}

@media (max-width:1100px){
.chat-tools{
  max-height:190px!important;
}
}

@media (max-width:700px){
.profile-edit-head{
  display:grid;
}
}

@media (max-width:700px){
.chat-stage{
  padding:8px!important;
}
}

@media (max-width:700px){
.chat-stage-inner{
  border-radius:22px!important;
  padding:12px!important;
}
}

@media (max-width:700px){
.chat-head{
  display:grid!important;
  grid-template-columns:1fr auto!important;
}
}

@media (max-width:700px){
.chat-logo{
  width:122px!important;
}
}

@media (max-width:700px){
.chat-status-line{
  grid-column:1 / -1;
}
}

@media (max-width:700px){
.video-card{
  height:260px!important;
}
}

@media (max-width:700px){
.rtc-input-row{
  grid-template-columns:auto minmax(0,1fr) auto!important;
}
}

@media (max-width:700px){
.send-btn span:last-child{
  display:none;
}
}

.profile-art{
  position:relative;
  width:154px;
  height:154px;
  margin:0 auto 8px;
  display:grid;
  place-items:center;
  isolation:isolate;
}

.profile-avatar-shell{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:80px;
  height:80px;
  border-radius:50%;
  overflow:hidden;
  z-index:1;
  background:radial-gradient(circle at 35% 25%, rgba(255,255,255,.16), rgba(111,83,255,.20) 52%, rgba(32,228,255,.14));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08), 0 12px 26px rgba(0,0,0,.26);
}

.profile-ring{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 0 24px rgba(32,228,255,.2));
  z-index:3;
  pointer-events:none;
}

.profile-mascot{
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.25));
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

body:not(.profile-has-avatar) .profile-avatar-shell{
  width:104px;
  height:118px;
  overflow:visible;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

body:not(.profile-has-avatar) .profile-mascot{
  border:0;
  background:transparent;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:0!important;
}

.profile-modal-head{
  display:grid;
  gap:16px;
  align-items:center;
  grid-template-columns:122px minmax(0,1fr)!important;
}

.profile-modal-art{
  position:relative;
  width:122px;
  height:122px;
  display:grid;
  place-items:center;
}

.profile-modal-avatar-shell{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:74px;
  height:74px;
  border-radius:50%;
  overflow:hidden;
  z-index:2;
  background:radial-gradient(circle at 35% 25%, rgba(255,255,255,.16), rgba(111,83,255,.20) 52%, rgba(32,228,255,.14));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08), 0 10px 20px rgba(0,0,0,.24);
}

.profile-modal-frame{
  position:absolute;
  inset:0;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:3;
  filter:drop-shadow(0 0 20px rgba(32,228,255,.2));
  background:transparent!important;
  padding:0!important;
}

.profile-modal-avatar{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
  background:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}

.profile-modal-card:not(.has-custom-avatar) .profile-modal-avatar-shell{
  width:92px;
  height:92px;
  border-radius:26px;
  overflow:visible;
  background:transparent;
  box-shadow:none;
}

.profile-modal-card:not(.has-custom-avatar) .profile-modal-avatar{
  object-fit:contain!important;
  border-radius:0!important;
}

@media (max-width:700px){
.profile-modal-head{
  grid-template-columns:1fr!important;
}
}

@media (max-width:700px){
.profile-modal-art{
  width:112px;
  height:112px;
}
}

@media (max-width:700px){
.profile-modal-avatar-shell{
  width:68px;
  height:68px;
}
}

@media (max-width:700px){
.profile-modal-card:not(.has-custom-avatar) .profile-modal-avatar-shell{
  width:84px;
  height:84px;
}
}

.app-shell[data-dashboard-role="grabber"] .machine-glass-glow,
.grabzone-spectator-machine .machine-glass-glow{
  position:absolute!important;
  inset:18% 16% 19% 16%!important;
  border-radius:34px!important;
  z-index:2!important;
  background:radial-gradient(circle at 50% 34%, rgba(32,228,255,.24), transparent 42%)!important;
  pointer-events:none!important;
}

.live-capsules,
.grabzone-interaction-layer{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  z-index:4!important;
  pointer-events:none!important;
}

.spectator-claw,
.spectator-claw-two{
  display:none!important;
}

.capsule:hover,.capsule:focus-visible{
  transform:translate(-50%,-54%) scale(1.06)!important;
  filter:drop-shadow(0 0 18px rgba(32,228,255,.45))!important;
  outline:0!important;
}

.capsule:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 115%, rgba(255,255,255,.08), transparent 30%);
  pointer-events:none;
  display:none!important;
}

.capsule-art-wrap{
  margin-bottom:2px;
  top:auto!important;
  left:auto!important;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.36));
  place-items:center!important;
  position:absolute!important;
  inset:0!important;
  width:58px!important;
  height:78px!important;
  margin:0!important;
  display:block!important;
  transform:none!important;
  z-index:2!important;
}

.capsule-art{
  transform:scale(1.18);
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:3!important;
  filter:drop-shadow(0 9px 14px rgba(0,0,0,.34))!important;
}

.capsule-avatar{
  text-shadow:0 2px 8px rgba(0,0,0,.35);
  position:absolute!important;
  left:50%!important;
  top:38%!important;
  width:29px!important;
  height:29px!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  z-index:2!important;
  background:radial-gradient(circle at 35% 25%,#fff,#9a78ff 44%,#32dfff)!important;
  box-shadow:0 0 10px rgba(80,211,255,.34)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:950!important;
  line-height:1!important;
}

.capsule-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

.capsule strong{
  display:block;
  position:absolute!important;
  left:50%!important;
  top:-13px!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  width:112px!important;
  max-width:112px!important;
  font-size:10px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#fff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.72)!important;
  text-align:center!important;
}

.capsule small,.capsule-state-chip{
  display:none!important;
}

.capsule-badge{
  font-weight:900;
  backdrop-filter:blur(6px);
  border-color:rgba(255,255,255,.2)!important;
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:-10px!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  font-size:7px!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  border-radius:999px!important;
  padding:3px 6px!important;
  background:rgba(15,12,45,.84)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(0,0,0,.25)!important;
}

.capsule-self{
  left:50%;
  top:68%;
  pointer-events:none!important;
}

.grabzone-wait-grid{
  display:grid;
  gap:18px;
  grid-template-columns:minmax(0,1fr) minmax(260px,340px)!important;
  align-items:start!important;
}

.grabzone-nudge-card{
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.04));
  padding:14px;
  display:grid;
  gap:8px;
}

.grabzone-nudge-card p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}

.nudge-pad-horizontal{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}

.nudge-pad-horizontal .mini-btn{
  justify-content:center!important;
  min-height:44px!important;
}

.machine-empty-inline{
  justify-items:center;
  box-shadow:0 18px 34px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.03);
  pointer-events:none;
  position:absolute!important;
  left:50%!important;
  top:56%!important;
  transform:translate(-50%,-50%)!important;
  width:min(280px,78%)!important;
  display:grid!important;
  place-items:center!important;
  gap:6px!important;
  border:1px dashed rgba(255,255,255,.18)!important;
  border-radius:26px!important;
  background:rgba(6,3,22,.66)!important;
  padding:18px!important;
  text-align:center!important;
  color:var(--muted)!important;
  backdrop-filter:blur(10px)!important;
}

.machine-empty-inline img{
  width:60px;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.30));
  margin-bottom:1px;
  height:88px;
  object-fit:contain;
}

.machine-empty-inline strong{
  font-size:14px;
  line-height:1.1;
  text-align:center;
  color:#fff;
}

.machine-empty-inline span{
  color:rgba(232,236,255,.72);
  line-height:1.25;
  text-align:center;
  max-width:190px;
  font-size:13px;
}

@keyframes capsuleFloatSmall{0%,100%{margin-top:0}50%{margin-top:-3px}}

@media (max-width:1100px){
.app-shell[data-dashboard-role="grabber"] .machine-viewport,
  .grabzone-spectator-machine{
  aspect-ratio:3 / 3.75!important;
  min-height:0!important;
}
}

@media (max-width:1100px){
.grabzone-wait-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:560px){
.capsule{
  width:52px!important;
  height:70px!important;
}
}

@media (max-width:560px){
.capsule-art-wrap{
  width:52px!important;
  height:70px!important;
}
}

@media (max-width:560px){
.capsule-avatar{
  width:26px!important;
  height:26px!important;
  font-size:14px!important;
}
}

@media (max-width:560px){
.capsule strong{
  font-size:9px!important;
  width:96px!important;
  max-width:96px!important;
}
}

.app-shell[data-dashboard-role="grabber"] .live-machine-shell{
  display:grid;
  justify-items:center;
}

.grabzone-interaction-layer{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  pointer-events:none!important;
}

.machine-capsule-field .capsule,
.live-capsules .capsule{
  width:54px!important;
  height:72px!important;
}

.machine-capsule-field .capsule-art-wrap,
.live-capsules .capsule-art-wrap{
  width:54px!important;
  height:72px!important;
}

.machine-capsule-field .capsule-avatar,
.live-capsules .capsule-avatar{
  top:38%!important;
  width:27px!important;
  height:27px!important;
}

.machine-capsule-field .capsule strong,
.live-capsules .capsule strong{
  top:-14px!important;
  width:96px!important;
  max-width:96px!important;
}

.machine-capsule-field .capsule-badge,
.live-capsules .capsule-badge{
  bottom:-9px!important;
}

.machine-capsule-field .capsule-self{
  pointer-events:none!important;
}

@media (max-width:560px){
.machine-capsule-field .capsule,
  .live-capsules .capsule{
  width:48px!important;
  height:64px!important;
}
}

@media (max-width:560px){
.machine-capsule-field .capsule-art-wrap,
  .live-capsules .capsule-art-wrap{
  width:48px!important;
  height:64px!important;
}
}

@media (max-width:560px){
.machine-capsule-field .capsule-avatar,
  .live-capsules .capsule-avatar{
  width:24px!important;
  height:24px!important;
}
}

.app-shell[data-dashboard-role="grabber"] .live-machine-shell,
.grabzone-wait-grid > .grabzone-spectator-machine{
  justify-self:center!important;
}

.app-shell[data-dashboard-role="grabber"] .machine-copy{
  max-width:none;
  width:min(100%, var(--machine-shell-max-width))!important;
  margin:0 auto 12px!important;
}

.app-shell[data-dashboard-role="grabber"] .machine-viewport,
.grabzone-spectator-machine{
  position:relative!important;
  min-height:0!important;
  height:auto!important;
  border-radius:var(--grabzii-machine-radius)!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.16)!important;
  display:block!important;
  place-items:normal!important;
  width:min(100%, var(--machine-shell-max-width))!important;
  aspect-ratio:892 / 1340!important;
  margin:0 auto!important;
  background:transparent!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}

.app-shell[data-dashboard-role="grabber"] .machine-art,
.grabzone-spectator-machine .machine-art{
  filter:drop-shadow(0 24px 48px rgba(0,0,0,.38))!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:1!important;
  opacity:1!important;
}

.machine-interaction-layer,
.grabzone-interaction-layer{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

.live-capsules,
.machine-capsule-field{
  position:absolute!important;
  left:var(--machine-field-left)!important;
  top:var(--machine-field-top)!important;
  width:var(--machine-field-width)!important;
  height:var(--machine-field-height)!important;
  display:block!important;
  overflow:visible!important;
  z-index:4!important;
  pointer-events:none!important;
}

.live-capsules > .capsule,
.machine-capsule-field > .capsule{
  position:absolute!important;
  width:var(--machine-capsule-width)!important;
  height:var(--machine-capsule-height)!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform:translate(-50%,-50%)!important;
  display:block!important;
  pointer-events:auto!important;
}

.machine-capsule-field > .capsule{
  pointer-events:none!important;
}

.live-capsules > .capsule:hover,
.live-capsules > .capsule:focus-visible{
  transform:translate(-50%,-53%) scale(1.06)!important;
}

.live-capsules > .capsule .capsule-art-wrap,
.machine-capsule-field > .capsule .capsule-art-wrap{
  position:absolute!important;
  inset:0!important;
  width:var(--machine-capsule-width)!important;
  height:var(--machine-capsule-height)!important;
  display:block!important;
  margin:0!important;
  z-index:2!important;
}

.live-capsules > .capsule .capsule-art,
.machine-capsule-field > .capsule .capsule-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:3!important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.34))!important;
}

.live-capsules > .capsule .capsule-avatar,
.machine-capsule-field > .capsule .capsule-avatar{
  position:absolute!important;
  left:50%!important;
  top:38%!important;
  width:23px!important;
  height:23px!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  overflow:hidden!important;
  z-index:2!important;
  display:grid!important;
  place-items:center!important;
  font-size:13px!important;
  line-height:1!important;
}

.live-capsules > .capsule .capsule-avatar img,
.machine-capsule-field > .capsule .capsule-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

.live-capsules > .capsule strong,
.machine-capsule-field > .capsule strong{
  position:absolute!important;
  left:50%!important;
  top:-13px!important;
  width:92px!important;
  max-width:92px!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  font-size:9px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 2px 8px rgba(0,0,0,.78)!important;
}

.live-capsules > .capsule .capsule-badge,
.machine-capsule-field > .capsule .capsule-badge{
  position:absolute!important;
  left:50%!important;
  bottom:-9px!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  font-size:6.5px!important;
  line-height:1!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  padding:2px 5px!important;
  border-radius:999px!important;
  background:rgba(15,12,45,.86)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  color:#fff!important;
}

@media (max-width:560px){
:root{
  --machine-capsule-width:42px;
  --machine-capsule-height:56px;
}
}

@media (max-width:560px){
.live-capsules > .capsule .capsule-avatar,
  .machine-capsule-field > .capsule .capsule-avatar{
  width:20px!important;
  height:20px!important;
  font-size:11px!important;
}
}

@media (max-width:560px){
.live-capsules > .capsule strong,
  .machine-capsule-field > .capsule strong{
  font-size:8px!important;
  width:80px!important;
  max-width:80px!important;
}
}

.header-wallet{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:2px;
}

.header-wallet[hidden]{
  display:none!important;
}

.header-currency{
  position:relative;
  display:grid;
  grid-template-columns:24px auto;
  gap:0 7px;
  align-items:center;
  min-width:92px;
  padding:7px 10px 7px 7px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(6,4,28,.52);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 8px 22px rgba(0,0,0,.18);
  overflow:hidden;
}

.header-currency:before{
  content:"";
  position:absolute;
  inset:-1px;
  background:linear-gradient(90deg,rgba(255,101,216,.12),rgba(32,228,255,.12));
  opacity:.75;
  pointer-events:none;
}

.header-currency img{
  position:relative;
  z-index:1;
  width:24px;
  height:24px;
  object-fit:contain;
  grid-row:1/3;
  filter:drop-shadow(0 0 8px rgba(32,228,255,.24));
}

.header-currency span{
  position:relative;
  z-index:1;
  font-size:9px;
  font-weight:950;
  line-height:1;
  color:rgba(232,236,255,.74);
  white-space:nowrap;
}

.header-currency b{
  position:relative;
  z-index:1;
  font-size:16px;
  line-height:1;
  color:#fff;
}

.wallet-fly{
  position:fixed;
  z-index:9999;
  min-width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:999px;
  pointer-events:none;
  opacity:0;
  transform:translateY(12px) scale(.82);
  font-weight:1000;
  color:#fff;
  border:1px solid rgba(255,255,255,.24);
  background:linear-gradient(135deg,rgba(125,85,255,.96),rgba(32,228,255,.84));
  box-shadow:0 16px 34px rgba(0,0,0,.28),0 0 22px rgba(32,228,255,.32);
}

.wallet-fly.negative{
  background:linear-gradient(135deg,rgba(255,75,119,.96),rgba(255,151,91,.88));
}

.wallet-fly.active{
  animation:walletFlyToHeader 1s cubic-bezier(.2,.8,.2,1) forwards;
}

@keyframes walletFlyToHeader{0%{opacity:0;transform:translateY(12px) scale(.82)}
  14%{opacity:1;transform:translateY(0) scale(1)}
  100%{opacity:0;transform:translateY(-38px) scale(.62)}}

.machine-glass-glow,
.machine-prize-slot,
.machine-empty-inline{
  display:none!important;
}

.machine-viewport,
.grabzone-spectator-machine,
.app-shell[data-dashboard-role="grabber"] .machine-viewport,
.app-shell[data-dashboard-role="grabzone"] .grabzone-spectator-machine{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  border-radius:0!important;
}

.grabzone-wait-view.card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}

.machine-viewport .machine-art,
.grabzone-spectator-machine .machine-art{
  filter:drop-shadow(0 28px 52px rgba(0,0,0,.42))!important;
}

.app-shell.is-mystery-machine .claw-pad-horizontal{
  grid-template-columns:1fr!important;
  grid-template-areas:"drop"!important;
}

.app-shell.is-mystery-machine .claw-pad-horizontal .claw-btn{
  display:none!important;
}

.app-shell.is-mystery-machine .claw-drop{
  grid-area:drop!important;
  min-height:72px;
}

.capsule-mystery-choice{
  cursor:pointer!important;
}

.capsule-mystery-choice:hover{
  filter:drop-shadow(0 0 22px rgba(184,103,255,.58))!important;
}

.mystery-again-btn[hidden]{
  display:none!important;
}

.mystery-again-btn{
  background:linear-gradient(135deg,#8d5bff,#32dfff)!important;
  border:0!important;
  color:#fff!important;
}

@media (max-width:760px){
.header-wallet{
  gap:5px;
}
}

@media (max-width:760px){
.header-currency{
  min-width:0;
  padding:6px 8px 6px 6px;
  grid-template-columns:22px auto;
}
}

@media (max-width:760px){
.header-currency img{
  width:22px;
  height:22px;
}
}

@media (max-width:760px){
.header-currency span{
  display:none;
}
}

@media (max-width:760px){
.header-currency b{
  font-size:15px;
}
}

.chat-stage-inner:before{
  top:78px!important;
}

.chat-stage-inner:after{
  bottom:68px!important;
  display:none!important;
}

.chat-head{
  justify-content:space-between;
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  gap:18px!important;
  margin:0!important;
  position:relative;
  z-index:3;
  align-items:center!important;
  min-height:46px!important;
  margin-bottom:8px!important;
}

.chat-status-line .eyebrow{
  white-space:nowrap;
  display:none!important;
}

.video-card-head{
  margin-bottom:9px!important;
  margin:0 0 10px!important;
  display:flex!important;
  justify-content:space-between!important;
  min-width:0!important;
  height:auto!important;
  min-height:40px!important;
  gap:10px!important;
  align-items:center!important;
}

.video-card-remote .video-card-head{
  justify-content:flex-start!important;
}

.video-card-remote .video-state-pill{
  margin-left:auto!important;
}

.chat-actions-inline{
  position:static!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  flex:0 0 auto!important;
  display:flex!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
}

.chat-actions-inline .icon-btn{
  min-width:0!important;
  min-height:31px!important;
  padding:6px 9px!important;
  font-size:11px!important;
  border-radius:999px!important;
}

.chat-actions-inline .btn-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}

.chat-actions-inline .mystery-again-btn span:last-child{
  max-width:112px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.chat-lower-grid .chat-console{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

.chat-wallet-panel{
  min-height:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 22px 54px rgba(0,0,0,.22);
  padding:14px;
  display:grid;
  align-content:start;
  gap:12px;
  overflow:hidden;
}

.chat-wallet-head{
  display:grid;
  gap:2px;
}

.chat-wallet-head strong{
  font-size:18px;
  color:#fff;
  letter-spacing:-.02em;
}

.chat-wallet-balances{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}

.chat-wallet-panel .chat-currency{
  width:100%;
  border-radius:18px;
  grid-template-columns:30px minmax(0,1fr) auto;
  min-height:54px;
  padding:9px 11px;
}

.chat-wallet-panel .chat-currency img{
  width:30px;
  height:30px;
}

.chat-wallet-panel .chat-currency span{
  font-size:10px;
}

.chat-wallet-panel .chat-currency b{
  font-size:20px;
  text-align:right;
}

.chat-earn-rate,.gift-card .field-help{
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.gift-card{
  display:grid;
  gap:8px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.18);
  border-radius:20px;
  padding:12px;
}

.gift-card strong{
  font-size:14px;
  color:#fff;
}

.gift-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 76px auto;
  gap:7px;
  align-items:center;
}

.gift-row select,.gift-row input{
  height:40px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.28);
  color:#fff;
  padding:0 10px;
  outline:none;
  min-width:0;
}

.gift-row select:focus,.gift-row input:focus{
  border-color:rgba(32,228,255,.62);
  box-shadow:0 0 0 3px rgba(32,228,255,.10);
}

.inline-zii-emote.only-emote{
  padding:2px!important;
  background:transparent!important;
  border:0!important;
  gap:0!important;
}

.inline-zii-emote.only-emote img{
  width:34px!important;
  height:34px!important;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.24));
}

.inline-zii-emote.only-emote b{
  display:none!important;
}

.video-card.is-speaking .participant-chip{
  border-color:rgba(53,244,156,.52)!important;
  box-shadow:0 0 0 3px rgba(53,244,156,.10)!important;
}

.video-card.is-speaking .video-state-pill:after{
  content:" speaking";
  color:#bfffdc;
  font-weight:950;
}

@media (max-width:1180px){
.chat-stage-inner{
  grid-template-rows:auto auto minmax(260px,1fr)!important;
  overflow:auto!important;
}
}

@media (max-width:1180px){
.chat-lower-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:1180px){
.chat-wallet-panel{
  grid-template-columns:1fr;
}
}

@media (max-width:1180px){
.chat-wallet-balances{
  grid-template-columns:1fr 1fr;
}
}

@media (max-width:720px){
.chat-actions-inline{
  width:100%;
  justify-content:flex-start!important;
}
}

@media (max-width:720px){
.video-card-remote .video-state-pill{
  margin-left:0!important;
}
}

@media (max-width:720px){
.chat-wallet-balances{
  grid-template-columns:1fr;
}
}

@media (max-width:720px){
.gift-row{
  grid-template-columns:1fr 68px;
}
}

@media (max-width:720px){
.gift-row .mini-btn{
  grid-column:1 / -1;
}
}

.admin-body{
  background:#090522;
  color:var(--text);
  overflow-x:hidden;
}

.admin-topbar{
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(8,5,30,.84);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.admin-nav h2{
  margin:0 0 8px!important;
  font-size:28px!important;
}

.admin-main .card{
  min-width:0!important;
  overflow:hidden!important;
  padding:22px!important;
}

.admin-main h2{
  margin:0 0 12px!important;
  font-size:28px!important;
  letter-spacing:-.03em!important;
}

.admin-main h3{
  margin:0 0 8px!important;
  font-size:18px!important;
}

.admin-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}

.admin-card-head h2{
  margin:0!important;
}

.two-col-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.stat-card{
  padding:18px!important;
}

.stat-card span{
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

.stat-card strong{
  display:block!important;
  font-size:34px!important;
  margin-top:4px!important;
}

.admin-roadmap-card{
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035))!important;
}

.admin-roadmap-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.admin-roadmap-grid>div{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.16);
  border-radius:18px;
  padding:14px;
  min-width:0;
}

.admin-roadmap-grid p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
}

.admin-form-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:12px!important;
  align-items:end!important;
  min-width:0!important;
  margin-top:14px!important;
}

.admin-form-grid>*{
  min-width:0!important;
}

.admin-form-grid input,.admin-form-grid select,.inline-admin-form input,.inline-admin-form select,.admin-row-form input,.admin-row-form select,.admin-search-row input{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  min-height:40px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(0,0,0,.24)!important;
  color:#fff!important;
  padding:8px 10px!important;
}

.admin-field{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  color:var(--muted)!important;
  font-weight:850!important;
  line-height:1.18!important;
  align-items:start!important;
}

.admin-field span{
  display:block;
  min-height:30px;
}

.admin-check{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  color:var(--muted)!important;
  font-weight:850!important;
  min-height:40px!important;
}

.admin-check input{
  width:auto!important;
  min-height:auto!important;
}

.economy-settings-grid{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
}

.economy-settings-grid .primary{
  align-self:end!important;
  min-height:48px!important;
}

.settings-save-grid{
  grid-template-columns:minmax(140px,.8fr) minmax(180px,1fr) minmax(180px,1fr) auto minmax(160px,220px)!important;
}

.admin-cosmetic-form{
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}

.admin-search-row{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  gap:10px;
  align-items:center;
  margin:8px 0 14px;
}

.inline-admin-form{
  flex-wrap:wrap;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr)) auto!important;
  gap:8px!important;
  margin:0 0 8px!important;
  align-items:center!important;
  min-width:360px;
}

.admin-row-form{
  display:grid;
  gap:8px;
  align-items:center;
  min-width:760px;
}

.machine-row-form{
  grid-template-columns:minmax(180px,1.4fr) minmax(90px,.7fr) minmax(110px,.7fr) minmax(120px,.8fr) minmax(150px,1fr) minmax(75px,.45fr) auto;
}

.machine-row-form span{
  color:var(--muted);
  font-weight:850;
  white-space:nowrap;
}

.compact-table table{
  min-width:0!important;
}

.admin-table-wrap th{
  text-align:left!important;
  color:#d9d1ff!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  padding:0 10px!important;
  white-space:nowrap!important;
}

.admin-table-wrap td{
  background:rgba(255,255,255,.045)!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  padding:10px!important;
  vertical-align:top!important;
}

.admin-table-wrap td:first-child{
  border-left:1px solid rgba(255,255,255,.08)!important;
  border-radius:14px 0 0 14px!important;
}

.admin-table-wrap td:last-child{
  border-right:1px solid rgba(255,255,255,.08)!important;
  border-radius:0 14px 14px 0!important;
}

.admin-notice{
  margin:0!important;
}

.admin-main .primary,.admin-main .ghost{
  white-space:nowrap;
}

@media (max-width:1150px){
.two-col-grid,.admin-roadmap-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:1150px){
.settings-save-grid{
  grid-template-columns:1fr 1fr!important;
}
}

@media (max-width:720px){
.admin-body .wrap{
  width:min(100% - 24px,1500px);
}
}

@media (max-width:720px){
.admin-shell{
  padding-top:16px!important;
}
}

@media (max-width:720px){
.admin-nav{
  grid-template-columns:1fr!important;
}
}

@media (max-width:720px){
.admin-main .card{
  padding:16px!important;
  border-radius:24px!important;
}
}

@media (max-width:720px){
.admin-form-grid,.settings-save-grid,.admin-search-row{
  grid-template-columns:1fr!important;
}
}

@media (max-width:720px){
.inline-admin-form{
  grid-template-columns:1fr!important;
  min-width:260px;
}
}

@media (max-width:720px){
.admin-card-head{
  display:grid;
  align-items:start;
}
}

.brand{
  display:flex;
  gap:12px;
  align-items:center;
  color:var(--text);
  min-width:0;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  cursor:pointer;
}

.header-currency,
.currency-mini.currency-open{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(255,255,255,.13);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
}

.header-currency:hover,
.header-currency:focus-visible,
.currency-mini.currency-open:hover,
.currency-mini.currency-open:focus-visible{
  outline:none;
  border-color:rgba(32,228,255,.52)!important;
  box-shadow:0 0 0 3px rgba(32,228,255,.11),0 10px 28px rgba(32,228,255,.12)!important;
}

.site-footer .footer-link{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
  color:var(--muted);
  border-radius:999px;
  padding:8px 11px!important;
  line-height:1!important;
  white-space:nowrap!important;
  font:inherit;
  font-weight:850;
  cursor:pointer;
}

.site-footer .footer-link:hover,
.site-footer .footer-link:focus-visible{
  outline:none;
  border-color:rgba(32,228,255,.45);
  box-shadow:0 0 0 3px rgba(32,228,255,.10);
  color:#fff;
}

.marketplace-card{
  width:min(1040px,calc(100vw - 28px));
  max-height:min(86vh,860px);
  overflow:auto;
  display:grid;
  gap:18px;
  padding:24px!important;
}

.marketplace-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:start;
  padding-right:46px;
}

.marketplace-head h2{
  margin:3px 0 6px;
  font-size:clamp(28px,4vw,46px);
  line-height:1;
  letter-spacing:-.05em;
}

.marketplace-head p{
  max-width:680px;
  margin:0;
}

.marketplace-wallet{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

.marketplace-wallet .header-currency{
  cursor:default;
  min-width:118px;
  pointer-events:none;
}

.marketplace-tabs{
  justify-content:flex-start;
  margin:0;
}

.marketplace-section{
  display:none;
}

.marketplace-section.active{
  display:block;
}

.marketplace-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:12px;
}

.marketplace-item{
  position:relative;
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  grid-template-rows:1fr auto;
  gap:10px 12px;
  align-items:center;
  min-height:128px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  box-shadow:0 18px 38px rgba(0,0,0,.18),inset 0 0 0 1px rgba(255,255,255,.025);
  overflow:hidden;
}

.marketplace-item:before{
  content:"";
  position:absolute;
  inset:-60% -30% auto auto;
  width:180px;
  height:180px;
  background:radial-gradient(circle,rgba(32,228,255,.18),transparent 66%);
  pointer-events:none;
}

.marketplace-item-art{
  position:relative;
  z-index:1;
  grid-row:1 / 3;
  width:74px;
  height:86px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(5,3,24,.42);
  border:1px solid rgba(255,255,255,.08);
}

.marketplace-item-art img{
  max-width:66px;
  max-height:78px;
  object-fit:contain;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.34));
}

.marketplace-item-art.currency-art img{
  width:54px;
  height:54px;
}

.marketplace-item-body{
  position:relative;
  z-index:1;
  display:grid;
  gap:4px;
  min-width:0;
}

.marketplace-item-body strong{
  color:#fff;
  font-size:16px;
  line-height:1.08;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.marketplace-item-body span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  text-transform:capitalize;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.marketplace-item-body b{
  color:#fff;
  font-size:13px;
  line-height:1.2;
}

.marketplace-item .mini-btn{
  position:relative;
  z-index:1;
  grid-column:2;
  width:max-content;
  justify-self:start;
}

.marketplace-item .mini-btn:disabled{
  opacity:.62;
  cursor:not-allowed;
}

.marketplace-note{
  font-size:12px;
  margin:10px 2px 0!important;
}

.cosmetic-item.rarity-rare{
  border-color:rgba(32,228,255,.22);
}

.cosmetic-item.rarity-epic,.cosmetic-item.rarity-premium{
  border-color:rgba(205,89,255,.28);
}

.cosmetic-item.rarity-legendary{
  border-color:rgba(255,209,92,.34);
}

@media (max-width:720px){
.marketplace-card{
  padding:18px!important;
  max-height:90vh;
}
}

@media (max-width:720px){
.marketplace-head{
  grid-template-columns:1fr;
  padding-right:38px;
}
}

@media (max-width:720px){
.marketplace-wallet{
  justify-content:flex-start;
}
}

@media (max-width:720px){
.marketplace-grid{
  grid-template-columns:1fr;
}
}

:root{
  --bg:#090522;
  --bg2:#120737;
  --panel:rgba(23,18,55,.78);
  --panel-solid:#171239;
  --panel2:rgba(40,28,83,.72);
  --line:rgba(255,255,255,.15);
  --line-strong:rgba(255,255,255,.28);
  --text:#fff8ff;
  --muted:#c7bee9;
  --soft:#f2e9ff;
  --pink:#ff65d8;
  --pink2:#ff9fe7;
  --purple:#7d55ff;
  --blue:#3287ff;
  --cyan:#20e4ff;
  --gold:#ffe66d;
  --orange:#ff9b55;
  --danger:#ff5579;
  --ok:#35f49c;
  --radius:28px;
  --radius-lg:38px;
  --shadow:0 30px 100px rgba(0,0,0,.44);
  --glow:0 0 38px rgba(117,84,255,.38),0 0 72px rgba(32,228,255,.14);
  color-scheme:dark;
  --grabzii-machine-radius:42px;
  --machine-shell-max-width:640px;
  --machine-field-left:15.5%;
  --machine-field-top:30.2%;
  --machine-field-width:69%;
  --machine-field-height:35%;
  --machine-capsule-width:48px;
  --machine-capsule-height:64px;
  --g42-bg:#090522;
  --g42-panel:rgba(23,18,55,.78);
  --g42-panel-2:rgba(40,28,83,.72);
  --g42-line:rgba(255,255,255,.15);
  --g42-text:#fff8ff;
  --g42-muted:#c7bee9;
  --g42-cyan:#20e4ff;
  --g42-pink:#ff65d8;
  --g42-purple:#7d55ff;
  --g42-gold:#ffe66d;
  --g42-ok:#35f49c;
  --g42-danger:#ff5579;
  --g42-radius:28px;
  --g42-shadow:0 30px 100px rgba(0,0,0,.44);
}

html{
  scroll-behavior:smooth;
  scrollbar-width:thin;
  scrollbar-color:rgba(56,213,255,.65) rgba(10,8,35,.82);
  background:var(--g42-bg);
}

body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  overflow-x:hidden;
  display:flex;
  flex-direction:column;
  min-height:100vh;
  color:var(--text,var(--g42-text));
  background:radial-gradient(circle at 18% 0%,rgba(255,101,216,.30),transparent 30%),
    radial-gradient(circle at 82% 4%,rgba(32,228,255,.20),transparent 30%),
    radial-gradient(circle at 50% 78%,rgba(125,85,255,.22),transparent 34%),
    linear-gradient(180deg,#0d0630 0%,#08041e 50%,#050315 100%);
}

.wrap{
  margin:0 auto;
  width:min(1220px,calc(100% - 32px));
  margin-left:auto;
  margin-right:auto;
}

.topbar{
  position:sticky;
  top:0;
  z-index:20;
  box-shadow:0 1px 0 rgba(255,255,255,.08),0 18px 50px rgba(0,0,0,.22);
  background:rgba(8,4,27,.78);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.12);
}

.topbar-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 0;
  min-width:0;
}

.brand,.topbar a.brand{
  display:flex;
  align-items:center;
  gap:12px;
  background:transparent;
  border:0;
  color:var(--text,var(--g42-text));
  padding:0;
  text-decoration:none;
  cursor:pointer;
  min-width:0;
}

.brand-copy img{
  width:168px!important;
  display:block;
  height:auto;
  filter:drop-shadow(0 0 18px rgba(255,101,216,.35));
}

.nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
}

.card,.feature-card,.safety-panel,.machine-toolbar,.control-card,.incoming-panel,.admin-nav,.admin-main .card{
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius,var(--g42-radius));
  box-shadow:var(--shadow,var(--g42-shadow));
  backdrop-filter:blur(14px);
}

.primary,.ghost,.pill,.mini-btn{
  border-radius:999px;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
}

.primary{
  color:#fff;
  background:linear-gradient(135deg,var(--pink,var(--g42-pink)),var(--purple,var(--g42-purple)) 52%,var(--cyan,var(--g42-cyan)));
  box-shadow:0 14px 36px rgba(125,85,255,.36),inset 0 1px 0 rgba(255,255,255,.25);
}

.ghost,.pill{
  color:var(--soft,#f2e9ff);
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.16);
}

.field input,.field textarea,.field select,.admin-field input,.admin-field textarea,.admin-field select{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.15);
  border-radius:18px;
  background:rgba(0,0,0,.23);
  color:var(--text,var(--g42-text));
  padding:12px 14px;
  outline:none;
}

.admin-body .wrap{
  width:min(100% - 40px,1500px);
}

.admin-shell{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:start!important;
  padding:28px 0 72px!important;
  min-width:0!important;
}

.admin-nav{
  align-self:start!important;
  position:sticky!important;
  top:92px!important;
  display:grid!important;
  gap:8px!important;
  padding:18px!important;
  min-width:0!important;
}

.admin-nav a{
  display:flex!important;
  align-items:center!important;
  text-decoration:none!important;
  color:#e9e3ff!important;
  border-radius:14px!important;
  padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.04)!important;
  font-weight:850!important;
  min-height:42px!important;
  line-height:1.1!important;
}

.admin-nav a.active,.admin-nav a:hover{
  border-color:rgba(32,228,255,.34)!important;
  box-shadow:0 0 0 3px rgba(32,228,255,.08)!important;
  color:#fff!important;
  background:rgba(32,228,255,.07)!important;
}

.admin-main{
  display:grid!important;
  gap:18px!important;
  min-width:0!important;
}

.admin-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
  gap:16px!important;
  min-width:0!important;
}

.stats-grid{
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}

.admin-table-wrap{
  margin-top:14px!important;
  overflow:auto!important;
  max-width:100%!important;
  padding-bottom:6px!important;
}

.admin-table-wrap table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0 8px!important;
  min-width:760px!important;
}

.chat-stage.active{
  gap:12px;
  align-items:stretch!important;
  justify-content:center!important;
  padding:12px!important;
  position:fixed!important;
  inset:0!important;
  z-index:70!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  background:#090522!important;
}

.chat-stage-inner{
  flex-direction:column!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(20,13,58,.95),rgba(5,4,22,.98))!important;
  border:1px solid rgba(122,115,255,.24)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 30px 90px rgba(0,0,0,.42)!important;
  height:calc(100vh - 20px)!important;
  overflow:hidden!important;
  position:relative!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  gap:14px!important;
  width:min(1360px,calc(100vw - 28px))!important;
  max-width:none!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:18px 0 0!important;
}

.video-grid{
  flex:0 0 auto!important;
  margin-bottom:14px!important;
  margin:0!important;
  position:relative!important;
  z-index:2!important;
  align-items:stretch!important;
  margin-top:12px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  min-height:0!important;
  height:100%!important;
}

.video-card,.video-tile{
  min-width:0!important;
  overflow:hidden!important;
}

.video-tile{
  transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease;
  overflow:hidden!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 0 80px rgba(49,75,255,.12)!important;
  padding:10px!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:280px!important;
  border-radius:30px!important;
  background:#050315!important;
  border:1px solid rgba(255,255,255,.12)!important;
}

.video-tile video{
  position:relative;
  z-index:1;
  border:0;
  border-radius:0;
  background:transparent;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

.video-card.is-speaking .video-tile,.video-tile.speaking{
  border-color:var(--ok,var(--g42-ok))!important;
  box-shadow:0 0 0 4px rgba(53,244,156,.20),0 0 38px rgba(53,244,156,.50),0 26px 86px rgba(0,0,0,.34)!important;
}

.chat-lower-grid{
  min-height:0!important;
  max-width:none!important;
  position:relative!important;
  z-index:3!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,320px)!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
}

.chat-console{
  flex:1 1 auto!important;
  flex-direction:column!important;
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-rows:auto minmax(90px,1fr) auto!important;
  gap:8px!important;
  min-height:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  min-width:0!important;
}

.rtc-transcript{
  backdrop-filter:blur(10px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
  flex:1 1 auto!important;
  padding:16px!important;
  max-height:none!important;
  overflow:auto!important;
  border-radius:24px!important;
  min-height:0!important;
  height:auto!important;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.24);
  display:flex;
  flex-direction:column;
  gap:7px;
}

.machine-viewport{
  aspect-ratio:1122/1402;
  margin:0 auto;
  width:min(100%, 600px)!important;
  max-height:calc(100vh - 155px);
  min-height:0!important;
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:42px!important;
  background:radial-gradient(circle at 50% 5%, rgba(255,255,255,.14), transparent 34%),linear-gradient(180deg, rgba(24,18,58,.72), rgba(7,6,22,.94))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 24px 70px rgba(0,0,0,.34)!important;
}

.live-capsules{
  align-content:end;
  right:auto!important;
  bottom:auto!important;
  left:15.5%!important;
  top:30.2%!important;
  width:69%!important;
  height:35%!important;
  overflow:visible!important;
  inset:0!important;
  pointer-events:none!important;
  position:absolute!important;
  z-index:8!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:end!important;
}

.capsule{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
  flex-direction:column;
  text-align:center;
  margin:0!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  width:58px!important;
  height:78px!important;
  min-height:0!important;
  padding:0!important;
  box-shadow:none!important;
  transform:translate(-50%,-50%)!important;
  display:block!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  animation:capsuleFloatSmall 3.8s ease-in-out infinite!important;
  position:relative!important;
  min-width:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.045))!important;
  color:#fff!important;
}

.capsule-art-wrap,.capsule-art{
  display:grid!important;
  place-items:center!important;
}

.site-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border:1px solid rgba(255,255,255,.10);
  color:var(--muted);
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  border-radius:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  box-shadow:0 -1px 0 rgba(255,255,255,.08),0 -18px 50px rgba(0,0,0,.20)!important;
  margin:34px 0 0!important;
  position:relative!important;
  z-index:5!important;
  margin-top:28px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  background:rgba(8,4,27,.45)!important;
}

.site-footer-inner{
  color:var(--muted)!important;
  flex-direction:row!important;
  min-height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  padding:18px 0!important;
}

.site-footer nav{
  flex:0 0 auto!important;
  justify-content:flex-end!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}

@media (max-width:1150px){
.admin-shell{
  grid-template-columns:1fr!important;
}
}

@media (max-width:1150px){
.admin-nav{
  position:relative!important;
  top:auto!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
}
}

@media (max-width:1150px){
.admin-nav h2{
  grid-column:1/-1!important;
}
}

@media (max-width:1150px){
.chat-lower-grid{
  grid-template-columns:1fr!important;
}
}

@media (max-width:760px){
.wrap{
  width:min(100% - 24px,1220px)!important;
}
}

@media (max-width:760px){
.brand-copy img{
  width:118px!important;
}
}

@media (max-width:760px){
.nav{
  gap:8px!important;
}
}

@media (max-width:760px){
.nav .pill{
  display:none!important;
}
}

@media (max-width:760px){
.admin-body .wrap{
  width:min(100% - 24px,1500px)!important;
}
}

@media (max-width:760px){
.admin-nav{
  grid-template-columns:1fr!important;
}
}

@media (max-width:760px){
.admin-main .card{
  padding:16px!important;
  border-radius:24px!important;
}
}

@media (max-width:760px){
.chat-stage-inner{
  width:min(100vw - 24px,1360px)!important;
  overflow:auto!important;
  grid-template-rows:auto auto auto!important;
}
}

@media (max-width:760px){
.video-grid{
  min-height:0;
  grid-template-columns:1fr!important;
  height:auto!important;
}
}

@media (max-width:760px){
.video-tile{
  height:230px!important;
  min-height:230px!important;
}
}

@media (max-width:760px){
.live-capsules{
  right:8%;
  left:15%!important;
  top:30%!important;
  width:70%!important;
  height:34%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
}

@media (max-width:760px){
.site-footer-inner{
  display:grid!important;
  justify-items:start!important;
}
}

/* v47 scoped chat/machine repair: full-width chat, media controls, shared capsule coordinates */
.chat-stage.active{
  padding:6px!important;
  align-items:stretch!important;
  justify-content:stretch!important;
}

.chat-stage.active .chat-stage-inner{
  width:calc(100vw - 12px)!important;
  max-width:none!important;
  height:calc(100vh - 12px)!important;
  margin:0!important;
  border-radius:22px!important;
  grid-template-rows:auto minmax(300px, 1.05fr) minmax(190px, .72fr)!important;
  padding:16px 18px 0!important;
}

.chat-stage.active .chat-head{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

.chat-stage.active .video-grid{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:100%!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:stretch!important;
}

.chat-stage.active .video-card{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
}

.chat-stage.active .video-card-remote{
  grid-template-rows:auto minmax(0,1fr)!important;
}

.chat-stage.active .video-tile{
  min-height:0!important;
  height:100%!important;
}

.chat-stage.active .chat-lower-grid{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:100%!important;
  align-items:stretch!important;
  grid-template-columns:minmax(0,1fr) minmax(280px,340px)!important;
}

.chat-stage.active .chat-console,
.chat-stage.active .chat-wallet-panel{
  min-height:0!important;
  height:100%!important;
}

.media-control-bar{
  display:grid!important;
  grid-template-columns:auto auto minmax(180px,1fr) minmax(180px,1fr)!important;
  gap:8px!important;
  align-items:end!important;
  padding:0 0 8px!important;
  min-width:0!important;
}

.media-toggle{
  min-height:38px!important;
  justify-content:center!important;
  white-space:nowrap!important;
}

.media-toggle.is-off{
  border-color:rgba(255,85,121,.45)!important;
  background:rgba(255,85,121,.13)!important;
  color:#ffdce5!important;
}

.media-device-field{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

.media-device-field select{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:rgba(6,4,24,.78)!important;
  color:#fff!important;
  padding:0 12px!important;
  font-size:12px!important;
  outline:none!important;
}

.video-tile.camera-off .video-screen-window video{
  opacity:0!important;
}

.video-tile.camera-off .video-placeholder{
  z-index:4!important;
  display:flex!important;
}

.video-tile.camera-off .video-placeholder strong::after{
  content:' off';
}

.video-tile.mic-muted .video-state-pill::after,
.video-card:has(.video-tile.mic-muted) .video-state-pill::after{
  content:' · muted';
}

.live-capsules,
.machine-capsule-field{
  inset:auto!important;
  left:var(--machine-field-left)!important;
  top:var(--machine-field-top)!important;
  width:var(--machine-field-width)!important;
  height:var(--machine-field-height)!important;
  display:block!important;
  align-content:normal!important;
  align-items:normal!important;
  grid-template-columns:none!important;
  gap:0!important;
}

.live-capsules > .capsule,
.machine-capsule-field > .capsule{
  position:absolute!important;
  transform:translate(-50%,-50%)!important;
}

@media (max-width:980px){
  .chat-stage.active{
    padding:0!important;
  }
  .chat-stage.active .chat-stage-inner{
    width:100vw!important;
    height:100vh!important;
    border-radius:0!important;
    overflow:auto!important;
    grid-template-rows:auto auto auto!important;
  }
  .chat-stage.active .video-grid,
  .chat-stage.active .chat-lower-grid{
    grid-template-columns:1fr!important;
    height:auto!important;
  }
  .chat-stage.active .video-card{
    min-height:300px!important;
  }
  .media-control-bar{
    grid-template-columns:1fr 1fr!important;
  }
  .media-device-field{
    grid-column:span 1;
  }
}

@media (max-width:560px){
  .media-control-bar{
    grid-template-columns:1fr!important;
  }
  .media-device-field{
    grid-column:auto;
  }
}
