/* ============================================================
   AUBUK · 系统嵌入页样式
   用于登录中心下各系统的全屏承载页
   （login-signage.html / login-hotel.html / login-dining.html）
   ============================================================ */

*, *::before, *::after { box-sizing: border-box; }

html, body { height: 100%; }

.embed-body {
  margin: 0;
  overflow: hidden;
  background: #0A1424;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
}

/* ---------- 全屏承载第三方系统 ---------- */
.embed-frame {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  background: #FFFFFF;
}

/* ---------- 加载遮罩 ---------- */
.embed-loading {
  position: fixed;
  inset: 0;
  z-index: 2;
  display: grid;
  place-items: center;
  background: #0A1424;
  transition: opacity .45s ease;
}
.embed-loading.is-hidden { opacity: 0; pointer-events: none; }
.embed-loading__ring {
  width: 42px;
  height: 42px;
  margin: 0 auto;
  border-radius: 50%;
  border: 3px solid rgba(148, 163, 184, .22);
  border-top-color: #20C9D8;
  animation: embedSpin .8s linear infinite;
}
@keyframes embedSpin { to { transform: rotate(360deg); } }
.embed-loading__text {
  margin: 16px 0 0;
  color: rgba(226, 232, 240, .62);
  font-size: 13px;
  letter-spacing: .06em;
}

/* ---------- 返回浮标：默认低调，悬停显现 ---------- */
.embed-back {
  position: fixed;
  top: 14px;
  left: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(10, 20, 36, .55);
  border: 1px solid rgba(148, 163, 184, .22);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #E2E8F0;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  opacity: .3;
  transition: opacity .25s ease, background .25s ease, border-color .25s ease;
}
.embed-back:hover,
.embed-back:focus-visible {
  opacity: 1;
  background: rgba(10, 20, 36, .92);
  border-color: rgba(32, 201, 216, .55);
  outline: none;
}

/* ---------- 加载异常兜底 ---------- */
.embed-fallback {
  position: fixed;
  inset: 0;
  z-index: 4;
  display: none;
  place-items: center;
  padding: 24px;
  background: #0A1424;
  text-align: center;
}
.embed-fallback.is-show { display: grid; }
.embed-fallback__title { margin: 0 0 8px; color: #E2E8F0; font-size: 17px; font-weight: 700; }
.embed-fallback__desc { margin: 0 0 20px; color: rgba(226, 232, 240, .6); font-size: 14px; }
.embed-fallback__btn {
  display: inline-block;
  padding: 10px 24px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #43D7E8, #20C9D8 50%, #54E2B1);
  color: #06231F;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
  .embed-loading__ring { animation: none; }
}
