/* Vchat 0.60.3 · Meta Advanced Connection Center — visual polish and global-CSS isolation */

/* The public shell has a legacy rule that hides generic header/footer elements.
   The wizard now uses dedicated classes and this layer remains fully isolated. */
.vchat-ma-modal,
.vchat-ma-modal *{box-sizing:border-box}

.vchat-ma-modal{
  --ma-navy:#0F172A;
  --ma-slate:#475569;
  --ma-muted:#94A3B8;
  --ma-border:#E2E8F0;
  --ma-surface:#FFFFFF;
  --ma-soft:#F8FAFC;
  --ma-peri:#6366F1;
  --ma-violet:#8B5CF6;
  --ma-cyan:#38BDF8;
  padding:22px;
}

.vchat-ma-backdrop{
  background:rgba(15,23,42,.68);
  backdrop-filter:blur(14px) saturate(110%);
}

.vchat-ma-shell{
  width:min(1240px,calc(100vw - 44px));
  height:min(860px,calc(100dvh - 44px));
  border:1px solid rgba(255,255,255,.28);
  border-radius:30px;
  background:#F8FAFC;
  box-shadow:0 38px 110px rgba(2,6,23,.38),0 0 0 1px rgba(15,23,42,.04);
  isolation:isolate;
}
.vchat-ma-shell::before{
  content:"";
  position:absolute;
  z-index:4;
  top:0;left:30px;right:30px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,var(--ma-violet),var(--ma-peri) 52%,var(--ma-cyan));
  opacity:.92;
  pointer-events:none;
}

.vchat-ma-header{
  position:relative;
  z-index:3;
  min-height:70px;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 18px 14px 20px;
  border-bottom:1px solid var(--ma-border);
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(18px);
}
.vchat-ma-header>div{display:flex;align-items:center;gap:12px;min-width:0}
.vchat-ma-brand-mark{
  width:42px;height:42px;
  flex:0 0 42px;
  display:grid;place-items:center;
  overflow:hidden;
  border:1px solid rgba(99,102,241,.13);
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#F3F5FF);
  color:var(--ma-peri);
  box-shadow:0 10px 26px rgba(15,23,42,.08);
}
.vchat-ma-brand-mark img{display:block;width:32px;height:32px;object-fit:contain}
.vchat-ma-header small{
  display:block;
  color:#8CA0BC;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  line-height:1.2;
}
.vchat-ma-header strong{
  display:block;
  margin-top:3px;
  color:var(--ma-navy);
  font-size:17px;
  line-height:1.15;
  letter-spacing:-.012em;
}
.vchat-ma-header>button{
  width:40px;height:40px;
  flex:0 0 40px;
  display:grid;place-items:center;
  padding:0;
  border:1px solid var(--ma-border)!important;
  border-radius:13px;
  background:#fff!important;
  color:#64748B!important;
  font:500 25px/1 system-ui,-apple-system,sans-serif;
  cursor:pointer;
  box-shadow:0 5px 16px rgba(15,23,42,.04);
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.vchat-ma-header>button:hover{
  border-color:#CBD5E1!important;
  background:#F8FAFC!important;
  color:var(--ma-navy)!important;
  transform:translateY(-1px);
}
.vchat-ma-header>button:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(99,102,241,.15),0 5px 16px rgba(15,23,42,.05);
}

.vchat-ma-layout{grid-template-columns:252px minmax(0,1fr)}
.vchat-ma-layout>aside{
  padding:16px 12px 18px;
  border-right:1px solid var(--ma-border);
  background:linear-gradient(180deg,#fff 0%,#FCFDFF 100%);
  scrollbar-width:thin;
  scrollbar-color:#DCE4F0 transparent;
}
.vchat-ma-layout>aside::-webkit-scrollbar,
.vchat-ma-layout>main::-webkit-scrollbar{width:8px;height:8px}
.vchat-ma-layout>aside::-webkit-scrollbar-thumb,
.vchat-ma-layout>main::-webkit-scrollbar-thumb{background:#DCE4F0;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.vchat-ma-layout>aside button{
  position:relative;
  grid-template-columns:36px minmax(0,1fr);
  gap:10px;
  min-height:56px;
  margin:0 0 6px;
  padding:9px 10px;
  border:1px solid transparent!important;
  border-radius:15px;
  color:#5F7189;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.vchat-ma-layout>aside button:hover{
  border-color:#E5EAF2!important;
  background:#F8FAFD!important;
  color:var(--ma-navy)!important;
}
.vchat-ma-layout>aside button.is-active{
  border-color:rgba(99,102,241,.14)!important;
  background:linear-gradient(135deg,rgba(99,102,241,.10),rgba(56,189,248,.055))!important;
  color:#3730A3!important;
  box-shadow:inset 3px 0 var(--ma-peri),0 6px 18px rgba(99,102,241,.05);
}
.vchat-ma-layout>aside button.is-channel:not(.is-active){
  box-shadow:none;
  background:transparent;
}
.vchat-ma-layout>aside i{
  width:36px;height:36px;
  border:1px solid #E8EDF5;
  border-radius:12px;
  background:#F8FAFC;
  color:var(--ma-peri);
  font-size:10px;
}
.vchat-ma-layout>aside button.is-active i{
  border-color:transparent;
  background:linear-gradient(145deg,var(--ma-violet),var(--ma-peri) 58%,var(--ma-cyan));
  color:#fff;
  box-shadow:0 7px 18px rgba(99,102,241,.18);
}
.vchat-ma-layout>aside span{min-width:0;font-size:12px;font-weight:850;line-height:1.2}
.vchat-ma-layout>aside small{
  min-width:0;
  margin-top:4px;
  color:#97A6BA;
  font-size:9px;
  font-weight:600;
  line-height:1.35;
  white-space:normal;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.vchat-ma-aside-label{padding:15px 10px 8px;color:#8CA0BC;font-size:9px;letter-spacing:.17em}

.vchat-ma-layout>main{
  padding:26px 32px 42px;
  background:radial-gradient(circle at 97% 0%,rgba(56,189,248,.075),transparent 24%),linear-gradient(180deg,#FBFCFF,#F8FAFC 38%);
  scrollbar-width:thin;
  scrollbar-color:#DCE4F0 transparent;
  overscroll-behavior:contain;
}
.vchat-ma-footer{
  display:flex!important;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-top:20px;
  padding:14px 4px 2px;
  border-top:1px solid #E9EEF5;
  color:#94A3B8;
  font-size:10px;
  line-height:1.5;
}

.vchat-ma-intro{padding:4px 4px 20px}
.vchat-ma-kicker{color:#5665E8;font-size:9px;letter-spacing:.17em}
.vchat-ma-intro h2{max-width:760px;margin:9px 0 8px;font-size:29px;line-height:1.08;letter-spacing:-.035em}
.vchat-ma-intro>p{max-width:800px;font-size:12.5px;line-height:1.65}
.vchat-ma-notice{
  margin-top:14px;
  padding:12px 14px;
  border-color:#D8ECF8;
  border-radius:15px;
  background:linear-gradient(135deg,#F4FBFF,#F8FCFF);
  color:#607289;
}

.vchat-ma-panel{
  margin-bottom:16px;
  padding:22px 22px 20px;
  border:1px solid #DFE6EF;
  border-radius:22px;
  background:rgba(255,255,255,.98);
  box-shadow:0 10px 30px rgba(15,23,42,.035);
}
.vchat-ma-step-title{grid-template-columns:38px minmax(0,1fr) auto;gap:12px;margin-bottom:17px}
.vchat-ma-step-title>span{
  border:1px solid rgba(99,102,241,.09);
  background:linear-gradient(145deg,#F0F2FF,#E8F8FF);
  color:#4F46E5;
}
.vchat-ma-step-title small{color:#5566E8;letter-spacing:.15em}
.vchat-ma-step-title h3{font-size:18px;letter-spacing:-.018em}
.vchat-ma-step-title p{max-width:680px;color:#6B7D93;font-size:11px}
.vchat-ma-status{
  align-self:start;
  justify-self:end;
  min-width:max-content;
  max-width:160px;
  padding:7px 11px;
  border:1px solid #E4EAF2;
  border-radius:999px;
  background:#F8FAFC;
  color:#64748B;
  font-size:9px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  text-align:center;
}
.vchat-ma-status.is-ready{border-color:#B9EED5;background:#ECFDF5;color:#047857}
.vchat-ma-status.is-attention{border-color:#FED7AA;background:#FFF7ED;color:#B45309}

.vchat-ma-guide-box{
  margin-bottom:16px;
  padding:15px 17px;
  border-color:#E3E9F1;
  border-radius:16px;
  background:#FAFBFD;
}
.vchat-ma-guide-box ol{padding-left:20px;color:#586A80;font-size:10.8px;line-height:1.72}
.vchat-ma-guide-box li+li{margin-top:4px}
.vchat-ma-external{margin-top:11px;color:#4F55DF;text-decoration:none}
.vchat-ma-external:hover{color:#3730A3;text-decoration:underline;text-underline-offset:3px}

.vchat-ma-grid{gap:12px}
.vchat-ma-panel label{gap:7px;margin-bottom:13px;color:#4D6077;font-size:10px}
.vchat-ma-panel label>span{min-height:13px}
.vchat-ma-panel input,
.vchat-ma-panel textarea,
.vchat-ma-panel select{
  min-height:46px!important;
  width:100%!important;
  border:1px solid #D7E0EA!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--ma-navy)!important;
  padding:11px 13px!important;
  box-shadow:0 1px 2px rgba(15,23,42,.025)!important;
  font-family:inherit!important;
  font-size:12px!important;
  line-height:1.4!important;
  outline:none!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.vchat-ma-panel input::placeholder,
.vchat-ma-panel textarea::placeholder{color:#9AA9BB;opacity:1}
.vchat-ma-panel textarea{min-height:96px!important}
.vchat-ma-panel input:hover,
.vchat-ma-panel textarea:hover,
.vchat-ma-panel select:hover{border-color:#C6D1DE!important}
.vchat-ma-panel input:focus,
.vchat-ma-panel textarea:focus,
.vchat-ma-panel select:focus{
  border-color:#7C83F4!important;
  box-shadow:0 0 0 3px rgba(99,102,241,.10)!important;
}
.vchat-ma-secret>div{gap:9px;align-items:stretch}
.vchat-ma-secret button{
  min-width:82px;
  min-height:46px;
  border:1px solid #D7E0EA!important;
  border-radius:13px!important;
  background:#F8FAFC!important;
  color:#52647A!important;
  box-shadow:none!important;
  transition:.16s ease;
}
.vchat-ma-secret button:hover{border-color:#C6D1DE!important;background:#F1F5F9!important;color:var(--ma-navy)!important}

.vchat-ma-actions{gap:9px;margin-top:9px}
.vchat-ma-actions button{
  min-height:44px;
  padding:0 15px;
  border:1px solid #D7E0EA!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#52647A!important;
  box-shadow:none!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.vchat-ma-actions button:hover{border-color:#C6D1DE!important;background:#F8FAFC!important;color:var(--ma-navy)!important}
.vchat-ma-actions button.primary{
  border-color:transparent!important;
  background:linear-gradient(135deg,var(--ma-violet),var(--ma-peri) 58%,var(--ma-cyan))!important;
  color:#fff!important;
  box-shadow:0 10px 23px rgba(99,102,241,.17)!important;
}
.vchat-ma-actions button.primary:hover{
  background:linear-gradient(135deg,#7C4FE7,#565BEA 58%,#2CB3EA)!important;
  color:#fff!important;
  transform:translateY(-1px);
  box-shadow:0 13px 26px rgba(99,102,241,.21)!important;
}
.vchat-ma-actions button:focus-visible,
.vchat-ma-secret button:focus-visible,
.vchat-ma-copy-grid button:focus-visible,
.vchat-ma-layout>aside button:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(99,102,241,.14)!important;
}
.vchat-ma-actions button:disabled{opacity:.58;transform:none!important;cursor:wait}

.vchat-ma-copy-grid{gap:11px;margin-bottom:15px}
.vchat-ma-copy-grid>div{padding:13px;border-color:#E3E9F1;border-radius:15px;background:#FAFBFD}
.vchat-ma-copy-grid code{color:#25344B;font-size:10px;line-height:1.45}
.vchat-ma-copy-grid button{border:1px solid #D9DFFE!important;background:#F1F3FF!important;color:#4F55DF!important}
.vchat-ma-copy-grid button:hover{border-color:#C8D0FC!important;background:#E9ECFF!important;color:#3730A3!important}

.vchat-ma-warning{border-color:#FAD8B1;border-radius:15px;background:#FFF9F1;color:#A45117}
.vchat-ma-test-grid>div{border-color:#E3E9F1;background:#FAFBFD}
.vchat-ma-test-grid>div>span{background:linear-gradient(135deg,var(--ma-violet),var(--ma-peri) 58%,var(--ma-cyan))}
.vchat-ma-channel-state{border-color:#E3E9F1;background:#FAFBFD;color:#52647A}

@media(max-width:1040px){
  .vchat-ma-shell{width:min(1100px,calc(100vw - 28px));height:calc(100dvh - 28px)}
  .vchat-ma-modal{padding:14px}
  .vchat-ma-layout{grid-template-columns:232px minmax(0,1fr)}
  .vchat-ma-layout>main{padding:24px 24px 38px}
}

@media(max-width:900px){
  .vchat-ma-shell{width:calc(100vw - 24px);height:calc(100dvh - 24px)}
  .vchat-ma-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
  .vchat-ma-layout>aside{
    display:flex;
    gap:7px;
    padding:9px 10px;
    border-right:0;
    border-bottom:1px solid var(--ma-border);
    overflow-x:auto;
    overflow-y:hidden;
  }
  .vchat-ma-layout>aside button{min-width:142px;min-height:48px;margin:0;padding:6px 8px;grid-template-columns:32px minmax(0,1fr)}
  .vchat-ma-layout>aside i{width:32px;height:32px}
  .vchat-ma-layout>aside small,.vchat-ma-aside-label{display:none}
  .vchat-ma-layout>main{padding:20px 20px 34px}
}

@media(max-width:620px){
  .vchat-ma-modal{padding:0}
  .vchat-ma-shell{width:100vw;height:100dvh;border-radius:0;border:0}
  .vchat-ma-shell::before{left:0;right:0}
  .vchat-ma-header{min-height:62px;padding:10px 12px 10px 14px}
  .vchat-ma-brand-mark{width:38px;height:38px;flex-basis:38px;border-radius:12px}
  .vchat-ma-brand-mark img{width:29px;height:29px}
  .vchat-ma-header small{font-size:8px}
  .vchat-ma-header strong{font-size:15px}
  .vchat-ma-header>button{width:38px;height:38px;flex-basis:38px}
  .vchat-ma-layout>main{padding:16px 12px 28px}
  .vchat-ma-intro{padding:3px 2px 17px}
  .vchat-ma-intro h2{font-size:24px}
  .vchat-ma-panel{padding:16px;border-radius:18px}
  .vchat-ma-step-title{grid-template-columns:34px minmax(0,1fr);gap:10px}
  .vchat-ma-step-title>span{width:34px;height:34px}
  .vchat-ma-status{grid-column:2;justify-self:start;margin-top:3px}
  .vchat-ma-grid.two,.vchat-ma-copy-grid,.vchat-ma-test-grid{grid-template-columns:1fr}
  .vchat-ma-actions{display:grid;grid-template-columns:1fr}
  .vchat-ma-actions button{width:100%}
  .vchat-ma-footer{display:grid!important;gap:5px}
  .vchat-ma-warning,.vchat-ma-notice{display:grid}
}
