:root {
  --accent: #7c3aed;
  --accent-2: #22d3ee;
  --text: #e2e8f0;
  --muted: #94a3b8;
  --surface: rgba(15, 23, 42, 0.78);
  --surface-strong: rgba(10, 18, 34, 0.92);
  --border: rgba(255, 255, 255, 0.12);
  --shadow: 0 20px 45px rgba(2, 8, 23, 0.35);
}

* { box-sizing: border-box; }

body {
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at top left, rgba(34, 211, 238, 0.24), transparent 28%),
    radial-gradient(circle at bottom right, rgba(124, 58, 237, 0.28), transparent 30%),
    linear-gradient(135deg, #020617 0%, #0f172a 45%, #111827 100%);
  color: var(--text);
}

a { color: inherit; }

.container {
  width: min(1120px, calc(100% - 2rem));
  margin: 0 auto;
}

.app-shell { min-height: 100vh; display: flex; flex-direction: column; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  padding: 1rem 0;
  background: rgba(2, 6, 23, 0.6);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
}

.nav-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.logo {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 800;
  font-size: 1.05rem;
  text-decoration: none;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 0.8rem;
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: white;
  box-shadow: 0 8px 20px rgba(34, 211, 238, 0.15);
}

.brand-text { color: white; }

.nav { display: flex; gap: 1rem; flex-wrap: wrap; }
.nav a {
  text-decoration: none;
  color: var(--muted);
  transition: color 0.2s ease;
}
.nav a:hover { color: white; }
.nav { align-items: center; }
.nav-login, .nav-auth-button {
  padding: 0.55rem 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(34, 211, 238, 0.35);
  background: rgba(34, 211, 238, 0.1);
  color: white !important;
}
.nav-auth-button {
  font: inherit;
  cursor: pointer;
}
.user-name { color: #a7f3d0; font-size: 0.92rem; font-weight: 700; }
.language-toggle { padding: .45rem .65rem; border: 1px solid var(--border); border-radius: .65rem; background: rgba(255,255,255,.07); color: #67e8f9; font: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; }
.editable-image { position: relative; }
.editable-image > img { display:block; width:100%; height:100%; object-fit:cover; }
.image-upload-control { position:absolute; top:.75rem; right:.75rem; z-index:4; padding:.55rem .8rem; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:rgba(2,6,23,.82); color:white; font-size:.78rem; font-weight:800; cursor:pointer; backdrop-filter:blur(8px); }
.image-upload-control input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.image-format-hint { position:absolute; top:3.65rem; right:.8rem; z-index:4; padding:.3rem .5rem; border-radius:.45rem; background:rgba(2,6,23,.75); color:#cbd5e1; font-size:.7rem; }
.image-upload-error { position:absolute; left:.75rem; right:.75rem; bottom:.75rem; z-index:4; padding:.55rem .7rem; border-radius:.6rem; background:rgba(127,29,29,.9); color:#fecaca; font-size:.76rem; }

.btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.75rem 1.15rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font: inherit;
  font-weight: 750;
  text-decoration: none;
  cursor: pointer;
}
.btn:disabled { opacity: 0.65; cursor: wait; }
.btn.secondary { background: rgba(255,255,255,.08); border-color: var(--border); color: white; }
.eyebrow { color: #67e8f9 !important; font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.main { flex: 1; padding-bottom: 2rem; }

.auth-page {
  min-height: calc(100vh - 180px);
  display: grid;
  place-items: center;
  padding: 3rem 1rem;
}
.auth-card {
  width: min(100%, 460px);
  padding: 2.25rem;
  border-radius: 1.6rem;
  background: var(--surface-strong);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}
.auth-logo { width: fit-content; margin-bottom: 2rem; }
.auth-card h1 { margin: .35rem 0 .65rem; font-size: 2.25rem; color: white; }
.auth-intro { margin: 0 0 1.7rem; color: var(--muted); line-height: 1.65; }
.form-field { display: grid; gap: .5rem; margin-bottom: 1.1rem; }
.form-field label { font-weight: 700; color: #e2e8f0; }
.form-field input {
  width: 100%;
  padding: .9rem 1rem;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: .85rem;
  background: rgba(2,6,23,.65);
  color: white;
  font: inherit;
}
.form-field input:focus { outline: 2px solid rgba(34,211,238,.3); border-color: #22d3ee; }
.validation-message { color: #fca5a5; font-size: .88rem; }
.auth-error { padding: .8rem 1rem; border-radius: .75rem; background: rgba(239,68,68,.14); color: #fecaca; }
.auth-submit { width: 100%; margin-top: .35rem; border: 0; }
.back-link { display: block; margin-top: 1.3rem; text-align: center; color: var(--muted); text-decoration: none; }
.back-link:hover { color: white; }

.hero-banner {
  position: relative;
  overflow: hidden;
  padding: 4rem 0 2.5rem;
  background: linear-gradient(135deg, #04100e 0%, #091c13 35%, #0e281a 100%);
}

.hero-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(16, 185, 129, 0.18), transparent 24%),
    radial-gradient(circle at bottom left, rgba(16, 185, 129, 0.12), transparent 20%);
  pointer-events: none;
}

.hero-inner {
  position: relative;
  display: grid;
  grid-template-columns: 1.25fr 0.95fr;
  gap: 2rem;
  align-items: center;
  min-height: 520px;
}

.hero-copy {
  min-width: 0;
}

.hero-label {
  display: inline-flex;
  padding: 0.65rem 1.1rem;
  border-radius: 999px;
  background: rgba(16, 185, 129, 0.14);
  color: #a7f3d0;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}

.hero-copy h1 {
  font-size: clamp(2.7rem, 5vw, 4.8rem);
  line-height: 1.02;
  margin: 0 0 1.3rem;
  max-width: 720px;
  color: white;
}

.hero-copy p {
  font-size: 1.03rem;
  color: #cbd8ce;
  line-height: 1.82;
  margin: 0 0 1.75rem;
  max-width: 680px;
}

.hero-actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 1.75rem;
}

.btn.primary {
  background: linear-gradient(135deg, #10b981, #22c55e);
  color: #03140e;
  box-shadow: 0 18px 42px rgba(16, 185, 129, 0.28);
}

.btn.outline {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.14);
  color: white;
}

.hero-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}

.meta-item {
  padding: 1rem 1.15rem;
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.meta-item strong {
  display: block;
  font-size: 1.35rem;
  color: white;
  margin-bottom: 0.35rem;
}

.meta-item span {
  color: var(--muted);
  font-size: 0.95rem;
}

.hero-visual {
  display: flex;
  justify-content: flex-end;
}

.visual-frame {
  width: min(100%, 560px);
  border-radius: 2rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 35px 100px rgba(0, 0, 0, 0.4);
  background: #04130f;
}

.visual-frame img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center;
}

.section-block.feature-block {
  padding: 3rem 0 2rem;
}

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

.feature-card {
  padding: 1.75rem;
  border-radius: 1.6rem;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.18);
}

.feature-card h3 {
  margin: 0 0 0.85rem;
  color: white;
}

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

.image-stack::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(34, 211, 238, 0.18), transparent 40%, rgba(124, 58, 237, 0.18));
  pointer-events: none;
}

.main-visual {
  display: block;
  width: 100%;
  height: 320px;
  object-fit: cover;
  object-position: center;
  border-radius: 1.2rem;
  box-shadow: 0 16px 34px rgba(2, 8, 23, 0.24);
}

.floating-card {
  position: absolute;
  right: -0.6rem;
  bottom: -0.8rem;
  width: 42%;
  padding: 0.35rem;
  border-radius: 1rem;
  background: rgba(2, 6, 23, 0.88);
  border: 1px solid var(--border);
  box-shadow: 0 18px 35px rgba(2, 8, 23, 0.3);
  backdrop-filter: blur(10px);
}

.floating-card img {
  display: block;
  width: 100%;
  height: 150px;
  object-fit: cover;
  object-position: center;
  border-radius: 0.75rem;
}

.section-block { padding: 1rem 0 2rem; }
.section-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 1rem;
  margin-bottom: 1rem;
}
.section-head h2 { margin: 0; font-size: 1.3rem; color: white; }
.section-head p { margin: 0; color: var(--muted); }

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

.info-card {
  padding: 0;
  overflow: hidden;
  border-radius: 1.2rem;
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.info-card img {
  display: block;
  width: 100%;
  height: 180px;
  object-fit: cover;
  object-position: center;
}

.info-card h3, .info-card p { padding: 0 1.1rem; }
.info-card h3 { margin: 1rem 0 0.35rem; color: white; }
.info-card p { color: var(--muted); line-height: 1.7; margin: 0 0 1.1rem; }

.control-page { padding: 2rem 0 3rem; }
.control-shell {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 1.4rem;
  align-items: start;
}
.control-card, .side-card {
  border-radius: 1.4rem;
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  padding: 1.35rem;
}
.control-card h1, .side-card h2 { margin-top: 0; margin-bottom: 0.5rem; color: white; }
.control-card p, .side-card p { color: var(--muted); line-height: 1.7; margin: 0 0 1rem; }
.control-panel { display: grid; gap: 1rem; }
.control-row {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  flex-wrap: wrap;
}
.server-input {
  flex: 1;
  min-width: 220px;
  padding: 0.8rem 0.95rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(2, 6, 23, 0.6);
  color: white;
}
.server-input:focus {
  outline: 2px solid rgba(34, 211, 238, 0.35);
  border-color: rgba(34, 211, 238, 0.6);
}
.status-group { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.status-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.55rem 0.9rem;
  border-radius: 999px;
  font-size: 0.95rem;
  font-weight: 700;
}
.status-pill.connected { background: rgba(34, 197, 94, 0.18); color: #bbf7d0; }
.status-pill.offline { background: rgba(248, 113, 113, 0.18); color: #fecaca; }
.status-pill.lamp.on { background: rgba(245, 158, 11, 0.2); color: #fde68a; }
.status-pill.lamp.off { background: rgba(30, 41, 59, 0.8); color: #e2e8f0; }
.button-group { display: flex; gap: 0.8rem; flex-wrap: wrap; margin-top: 0.25rem; }
.message {
  padding: 0.9rem 1rem;
  border-radius: 0.9rem;
  background: rgba(34, 211, 238, 0.12);
  border: 1px solid rgba(34, 211, 238, 0.25);
  color: #d6f4ff;
  margin: 0;
}
.admin-page { padding-top: 3rem; }
.admin-heading { display: flex; justify-content: space-between; align-items: end; gap: 1.5rem; margin-bottom: 1.5rem; }
.admin-heading h1 { margin: .35rem 0 .5rem; font-size: clamp(2rem, 5vw, 3rem); color: white; }
.admin-heading p { margin: 0; color: var(--muted); }
.admin-card, .admin-state { padding: 1.5rem; border: 1px solid var(--border); border-radius: 1.4rem; background: var(--surface); box-shadow: var(--shadow); }
.admin-state { color: var(--muted); }
.admin-state.error { color: #fecaca; border-color: rgba(248,113,113,.3); }
.admin-card-title { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1.25rem; }
.admin-card-title h2 { margin: 0 0 .3rem; color: white; }
.admin-card-title p { margin: 0; color: var(--muted); }
.table-scroll { overflow-x: auto; }
.user-table { width: 100%; border-collapse: collapse; text-align: left; }
.user-table th { padding: .85rem 1rem; color: var(--muted); font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; border-bottom: 1px solid var(--border); }
.user-table td { padding: 1rem; border-bottom: 1px solid rgba(255,255,255,.07); color: #cbd5e1; }
.user-table tbody tr:last-child td { border-bottom: 0; }
.user-table strong { color: white; }
.user-table td small{display:block;margin-top:.3rem;color:var(--muted);font-size:.78rem}
.scene-card {
  padding: 1.35rem;
  border-radius: 1.4rem;
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}
.scene-card h1 { margin-top: 0; color: white; }
.scene-card p { color: var(--muted); line-height: 1.7; }
.scene-card a-scene {
  display: block;
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid var(--border);
  background: #020617;
}
.webxr-page { padding-top: 2.5rem; padding-bottom: 2rem; }
.webxr-instructions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.webxr-instructions span { padding: .65rem .85rem; border: 1px solid var(--border); border-radius: .8rem; background: rgba(255,255,255,.05); color: var(--muted); font-size: .9rem; }
.webxr-instructions strong { color: #e2e8f0; }
.webxr-stage { overflow: hidden; border: 1px solid rgba(103,232,249,.25); border-radius: 1rem; box-shadow: inset 0 0 40px rgba(34,211,238,.06); }
.webxr-stage a-scene { width: 100%; height: min(68vh, 620px); min-height: 420px; border: 0; border-radius: 0; }
.webxr-note { margin-top: 1rem; padding: .9rem 1rem; border-radius: .9rem; background: rgba(34,211,238,.08); color: var(--muted); line-height: 1.6; }
.webxr-note strong { color: #67e8f9; }
.webxr-actions { margin-top: 1.25rem; margin-bottom: 0; }
.xr-hub-page { padding-top: 4rem; padding-bottom: 4rem; }
.xr-hub-heading { max-width: 760px; margin-bottom: 2rem; }
.xr-hub-heading h1 { margin: .35rem 0 .8rem; color: white; font-size: clamp(2.5rem, 6vw, 4.5rem); }
.xr-hub-heading > p:last-child { color: var(--muted); font-size: 1.05rem; line-height: 1.75; }
.xr-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.25rem; }
.xr-choice-card { position: relative; overflow: hidden; display: flex; flex-direction: column; min-height: 440px; padding: 1.6rem; border: 1px solid var(--border); border-radius: 1.5rem; background: var(--surface); box-shadow: var(--shadow); text-decoration: none; transition: transform .25s ease, border-color .25s ease; }
.xr-choice-card:hover { transform: translateY(-5px); border-color: rgba(103,232,249,.45); }
.xr-choice-badge { position: absolute; top: 1.4rem; right: 1.4rem; z-index: 2; padding: .45rem .7rem; border-radius: 999px; background: rgba(2,6,23,.75); color: #67e8f9; font-weight: 900; letter-spacing: .08em; }
.xr-choice-art { position: relative; height: 210px; margin: -1.6rem -1.6rem 1.5rem; background: radial-gradient(circle at 50% 70%, rgba(34,211,238,.3), transparent 40%), linear-gradient(145deg,#09253a,#07101f); }
.xr-choice-card h2 { margin: 0 0 .65rem; color: white; font-size: 1.55rem; }
.xr-choice-card p { margin: 0 0 1.2rem; color: var(--muted); line-height: 1.65; }
.xr-choice-link { margin-top: auto; color: #67e8f9; font-weight: 800; }
.plant-art span { position: absolute; left: calc(50% - 35px); bottom: 24px; width: 70px; height: 64px; border-radius: 8px 8px 22px 22px; background: linear-gradient(#d97706,#92400e); }
.plant-art b { position: absolute; left: calc(50% - 5px); bottom: 82px; width: 10px; height: 65px; background: #166534; }
.plant-art i { position: absolute; left: calc(50% - 58px); bottom: 112px; width: 62px; height: 38px; border-radius: 100% 0 100% 0; background: #22c55e; transform: rotate(20deg); }
.plant-art i:nth-of-type(2) { left: 50%; transform: scaleX(-1) rotate(20deg); background: #4ade80; }
.vr-art span,.vr-art i,.vr-art b { position:absolute; bottom:45px; width:62px; height:62px; border-radius:12px; box-shadow:0 18px 35px rgba(34,211,238,.2); }
.vr-art span { left:22%; background:#22d3ee; transform:rotate(18deg); }.vr-art i{left:44%;bottom:70px;border-radius:50%;background:#8b5cf6}.vr-art b{left:66%;background:#22c55e;transform:rotate(-18deg)}
.ar-stage { position: relative; }
.ar-overlay { pointer-events: none; position: absolute; left: 50%; bottom: 1rem; transform: translateX(-50%); z-index: 3; width: max-content; max-width: calc(100% - 2rem); padding: .65rem 1rem; border-radius: 999px; background: rgba(2,6,23,.75); color: white; font-size: .88rem; text-align: center; }
.ios-ar-card { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin: 1.25rem 0; padding: 1.25rem; border: 1px solid rgba(103,232,249,.28); border-radius: 1.2rem; background: linear-gradient(135deg,rgba(14,116,144,.16),rgba(124,58,237,.13)); }
.ios-ar-card h2 { margin: .45rem 0 .4rem; color: white; }.ios-ar-card p { margin:0; max-width:680px; }
.platform-pill { display:inline-flex; padding:.35rem .6rem; border-radius:999px; background:rgba(255,255,255,.09); color:#67e8f9; font-size:.76rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.quick-look-button { flex: 0 0 auto; gap:.55rem; }.quick-look-button img { width:1.8rem; height:1.8rem; }
.ar-preview-managed { flex:0 0 116px; width:116px; height:116px; overflow:hidden; border:1px solid var(--border); border-radius:1rem; background:#071225; }.ar-preview-managed > img{object-fit:contain;}
.platform-divider { display:flex; align-items:center; gap:1rem; margin:1.4rem 0 .8rem; color:var(--muted); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }.platform-divider::before,.platform-divider::after{content:"";height:1px;flex:1;background:var(--border)}
.contact-page { padding-top: 4rem; padding-bottom: 4rem; }
.contact-hero { max-width: 720px; margin-bottom: 2rem; }
.contact-hero h1 { margin: .35rem 0 .8rem; color: white; font-size: clamp(2.5rem, 6vw, 4.5rem); }
.contact-hero > p:last-child { color: var(--muted); line-height: 1.75; font-size: 1.05rem; }
.contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.contact-card { display: flex; flex-direction: column; align-items: flex-start; gap: 1.25rem; min-width: 0; padding: 1.6rem; border: 1px solid var(--border); border-radius: 1.4rem; background: var(--surface); box-shadow: var(--shadow); }
.contact-card > div:nth-child(2) { min-width: 0; }
.contact-card h2 { margin: .35rem 0 .65rem; color: white; overflow-wrap: anywhere; font-size: clamp(1.25rem, 3vw, 1.65rem); }
.contact-card p { margin: 0; color: var(--muted); line-height: 1.65; }
.contact-card .btn { margin-top: auto; }
.contact-icon { display: grid; place-items: center; width: 3.2rem; height: 3.2rem; border-radius: 1rem; background: linear-gradient(135deg, #10b981, #22d3ee); color: #03140e; font-weight: 900; }
.email-card .contact-icon { background: linear-gradient(135deg, #8b5cf6, #22d3ee); color: white; font-size: 1.35rem; }
.contact-label { color: #67e8f9; font-size: .8rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.services-page,.service-detail-page { padding-top:4rem; padding-bottom:4rem; }
.services-heading { max-width:760px; margin-bottom:2rem; }.services-heading h1{margin:.35rem 0 .8rem;color:white;font-size:clamp(2.5rem,6vw,4.5rem)}.services-heading>p:last-child{color:var(--muted);line-height:1.75;font-size:1.05rem}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.service-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:330px;padding:1.6rem;border:1px solid var(--border);border-radius:1.4rem;background:var(--surface);box-shadow:var(--shadow);text-decoration:none}.service-card.available{transition:transform .25s ease,border-color .25s ease}.service-card.available:hover{transform:translateY(-5px);border-color:rgba(34,211,238,.45)}.service-card.upcoming{opacity:.68}.service-icon{display:grid;place-items:center;width:3.4rem;height:3.4rem;margin-bottom:1.4rem;border-radius:1rem;background:rgba(255,255,255,.08);color:#67e8f9;font-size:1.5rem;font-weight:900}.housekeeping-icon{background:linear-gradient(135deg,#10b981,#22d3ee);color:#03140e}.service-status{display:inline-flex;width:fit-content;padding:.4rem .65rem;border-radius:999px;background:rgba(34,211,238,.1);color:#67e8f9;font-size:.75rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.service-card h2{margin:.8rem 0 .55rem;color:white;font-size:1.55rem}.service-card p{margin:0 0 1.2rem;color:var(--muted);line-height:1.65}.service-link{margin-top:auto;color:#67e8f9;font-weight:800}
.service-back{display:inline-flex;margin-bottom:1.3rem;color:var(--muted);text-decoration:none}.service-back:hover{color:white}.service-detail-card{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--border);border-radius:1.6rem;background:var(--surface);box-shadow:var(--shadow)}.service-detail-copy h1{margin:.8rem 0 1rem;color:white;font-size:clamp(2.4rem,6vw,4.4rem)}.service-lead{color:#cbd5e1;font-size:1.08rem;line-height:1.8}.service-placeholder{margin:1.5rem 0;padding:1.2rem;border:1px solid var(--border);border-radius:1rem;background:rgba(255,255,255,.04)}.service-placeholder h2{margin:0 0 .5rem;color:white;font-size:1.1rem}.service-placeholder p{margin:0;color:var(--muted);line-height:1.65}.service-order-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.service-order-row span{color:var(--muted);font-size:.9rem}.service-detail-visual{display:grid;place-items:center;min-height:360px;border-radius:1.3rem;background:radial-gradient(circle,rgba(34,211,238,.25),transparent 48%),linear-gradient(145deg,#09253a,#07101f)}.cleaning-orbit{position:relative;display:grid;place-items:center;width:170px;height:170px;border:2px solid rgba(103,232,249,.4);border-radius:50%;animation:spin 12s linear infinite}.cleaning-orbit span{font-size:4rem;color:#67e8f9}.cleaning-orbit i,.cleaning-orbit b{position:absolute;width:28px;height:28px;border-radius:50%;background:#22c55e}.cleaning-orbit i{top:-14px}.cleaning-orbit b{bottom:-14px;background:#8b5cf6}@keyframes spin{to{transform:rotate(360deg)}}
.order-service-card{grid-template-columns:1fr;margin-bottom:1.25rem}.order-form{display:grid;gap:1.25rem}.order-section{padding:1.5rem;border:1px solid var(--border);border-radius:1.3rem;background:var(--surface);box-shadow:var(--shadow)}.order-section-heading{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.4rem}.order-section-heading>span{display:grid;place-items:center;flex:0 0 2.4rem;height:2.4rem;border-radius:.75rem;background:rgba(34,211,238,.13);color:#67e8f9;font-weight:900}.order-section-heading h2{margin:0 0 .3rem;color:white}.order-section-heading p{margin:0;color:var(--muted)}.order-fields{display:grid;gap:1rem}.order-fields.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.order-fields.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.order-form .form-field input,.order-form .form-field select,.order-form .form-field textarea{width:100%;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.15);border-radius:.85rem;background:rgba(2,6,23,.65);color:white;font:inherit}.order-form .form-field textarea{min-height:120px;resize:vertical}.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.task-grid label{display:flex;align-items:center;gap:.7rem;padding:.85rem;border:1px solid var(--border);border-radius:.85rem;background:rgba(255,255,255,.04);cursor:pointer}.task-grid input{width:1.1rem;height:1.1rem;accent-color:#22c55e}.order-notes{margin-top:1rem}.order-submit-bar{position:sticky;bottom:1rem;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px solid rgba(34,211,238,.3);border-radius:1.1rem;background:rgba(2,6,23,.9);box-shadow:var(--shadow);backdrop-filter:blur(16px)}.order-submit-bar strong,.order-submit-bar span{display:block}.order-submit-bar strong{color:white}.order-submit-bar span{margin-top:.2rem;color:var(--muted);font-size:.85rem}
.order-channel-buttons{display:flex;gap:.65rem;flex:0 0 auto;flex-wrap:wrap}.whatsapp-order{background:#25d366;color:#03140e}.zalo-order{background:#0877ff;color:white}.messenger-order{background:linear-gradient(135deg,#00b2ff,#a033ff);color:white}.order-success{display:flex;gap:1.2rem;margin-top:1.25rem;padding:1.5rem;border:1px solid rgba(34,197,94,.4);border-radius:1.3rem;background:rgba(34,197,94,.08);box-shadow:var(--shadow)}.order-success-icon{display:grid;place-items:center;flex:0 0 3rem;height:3rem;border-radius:50%;background:#22c55e;color:#03140e;font-size:1.5rem;font-weight:900}.order-success h2{margin:.35rem 0;color:white}.order-success p{color:#cbd5e1}.order-contact-note{max-width:760px;line-height:1.6}
.admin-orders-card{margin-bottom:1.25rem}.order-table{min-width:980px}.order-table td{vertical-align:top}.order-table small{display:block;margin-top:.3rem;color:var(--muted);line-height:1.4}
.admin-role-summary{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem 1.2rem;border:1px solid rgba(34,211,238,.25);border-radius:1rem;background:rgba(34,211,238,.07)}.admin-role-summary strong{color:#e2e8f0}.admin-role-summary span{color:var(--muted)}.admin-role-select{min-width:190px;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.65rem;background:#071225;color:#e2e8f0}
.user-identity{display:inline-flex;align-items:center;gap:.45rem}.user-identity>span:last-child{display:flex;flex-direction:column}.user-identity small{color:var(--muted);font-size:.68rem;line-height:1.1}.rank-medal{display:inline-grid;place-items:center;vertical-align:middle;width:1.6rem;height:1.6rem;border-radius:50%;font-size:1rem;background:rgba(255,255,255,.08)}.rank-1{filter:drop-shadow(0 0 5px rgba(205,127,50,.5))}.rank-2{filter:drop-shadow(0 0 5px rgba(192,192,192,.55))}.rank-3{filter:drop-shadow(0 0 6px rgba(255,215,0,.55))}.rank-4{filter:drop-shadow(0 0 7px rgba(103,232,249,.7))}
.games-page{padding-top:4rem;padding-bottom:4rem}.games-heading{max-width:760px;margin-bottom:2rem}.games-heading h1{margin:.35rem 0 .8rem;color:white;font-size:clamp(2.7rem,7vw,5rem)}.games-heading>p:last-child{color:var(--muted);font-size:1.05rem;line-height:1.7}.games-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:1.25rem;align-items:start}.game-card{overflow:hidden;padding:1.5rem;border:1px solid var(--border);border-radius:1.5rem;background:var(--surface);box-shadow:var(--shadow)}.game-card-heading{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.5rem}.game-card-heading h2{margin:0 0 .35rem;color:white;font-size:1.55rem}.game-card-heading p{margin:0;color:var(--muted)}.game-number{display:grid;place-items:center;flex:0 0 2.5rem;height:2.5rem;border-radius:.8rem;background:rgba(139,92,246,.16);color:#c4b5fd;font-weight:900}.wheel-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(190px,.65fr);gap:1.5rem;align-items:center}.wheel-stage{position:relative;width:300px;height:300px;margin:auto}.lucky-wheel{position:absolute;inset:8px;border:8px solid rgba(255,255,255,.82);border-radius:50%;background:conic-gradient(#06b6d4 0 12.5%,#8b5cf6 12.5% 25%,#ec4899 25% 37.5%,#f59e0b 37.5% 50%,#22c55e 50% 62.5%,#3b82f6 62.5% 75%,#ef4444 75% 87.5%,#14b8a6 87.5% 100%);box-shadow:0 18px 60px rgba(34,211,238,.22),inset 0 0 0 2px rgba(2,6,23,.4);transition:transform 3.1s cubic-bezier(.12,.72,.08,1)}.lucky-wheel::after{content:"";position:absolute;inset:50%;width:1px;height:50%;transform-origin:top;background:rgba(255,255,255,.5);box-shadow:0 0 0 1px rgba(2,6,23,.2)}.wheel-label{position:absolute;left:calc(50% - 17px);top:calc(50% - 17px);display:grid;place-items:center;width:34px;height:34px;font-size:1.45rem}.wheel-pointer{position:absolute;z-index:4;left:calc(50% - 15px);top:-4px;width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-top:34px solid #fff;filter:drop-shadow(0 4px 5px rgba(0,0,0,.5))}.wheel-hub{position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:64px;height:64px;transform:translate(-50%,-50%);border:6px solid white;border-radius:50%;background:#071225;color:#67e8f9;font-size:1.15rem;font-weight:950;box-shadow:0 4px 18px rgba(0,0,0,.45)}.wheel-panel{display:grid;gap:1.1rem}.prize-list{display:grid;gap:.45rem}.prize-list span{color:#cbd5e1;font-size:.88rem}.prize-list b{display:inline-block;width:1.8rem}.game-action{width:100%}.game-result{margin-top:1.25rem;padding:1rem;border-radius:1rem;text-align:center}.wheel-result{display:flex;justify-content:center;align-items:center;gap:.9rem;background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(34,211,238,.12));border:1px solid rgba(34,197,94,.35)}.wheel-result>span{font-size:2.3rem}.wheel-result small,.wheel-result strong{display:block}.wheel-result small{color:var(--muted)}.wheel-result strong{margin-top:.2rem;color:white;font-size:1.15rem}.rps-score{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin:1rem 0 1.4rem}.rps-score span{text-align:center}.rps-score small,.rps-score strong{display:block}.rps-score small{color:var(--muted)}.rps-score strong{color:white;font-size:2rem}.rps-score>b{color:#67e8f9;font-size:1.5rem}.rps-arena{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:1.2rem;border:1px solid var(--border);border-radius:1.1rem;background:rgba(2,6,23,.45)}.rps-arena>div{text-align:center}.rps-arena small,.rps-arena strong{display:block}.rps-arena small{color:var(--muted)}.rps-arena strong{margin-top:.55rem;font-size:3.2rem}.rps-arena>span{color:#67e8f9;font-weight:900}.rps-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1rem}.rps-buttons button{padding:.75rem .4rem;border:1px solid var(--border);border-radius:.9rem;background:rgba(255,255,255,.05);color:#e2e8f0;font:inherit;font-weight:800;cursor:pointer;transition:transform .2s,border-color .2s}.rps-buttons button:hover{transform:translateY(-3px);border-color:#67e8f9}.rps-buttons span{display:block;margin-bottom:.3rem;font-size:1.8rem}.rps-result{font-weight:850}.rps-result.win{background:rgba(34,197,94,.14);color:#86efac}.rps-result.lose{background:rgba(239,68,68,.13);color:#fca5a5}.rps-result.draw{background:rgba(34,211,238,.12);color:#67e8f9}.game-reset{display:block;margin:1rem auto 0;border:0;background:none;color:var(--muted);text-decoration:underline;cursor:pointer}
.chat-page{padding-top:4rem;padding-bottom:4rem}.chat-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.5rem}.chat-heading h1{margin:.35rem 0 .6rem;color:white;font-size:clamp(2.5rem,6vw,4.4rem)}.chat-heading p:last-child{margin:0;color:var(--muted)}.chat-connection{display:inline-flex;align-items:center;gap:.5rem;flex:0 0 auto;padding:.5rem .75rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.82rem;font-weight:800}.chat-connection i{width:.55rem;height:.55rem;border-radius:50%;background:#64748b}.chat-connection.online{color:#86efac;border-color:rgba(34,197,94,.3)}.chat-connection.online i{background:#22c55e;box-shadow:0 0 10px #22c55e}.chat-shell{overflow:hidden;border:1px solid var(--border);border-radius:1.4rem;background:var(--surface);box-shadow:var(--shadow)}.chat-messages{height:min(62vh,620px);min-height:390px;overflow-y:auto;padding:1.25rem;scroll-behavior:smooth}.chat-empty{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;height:100%;color:var(--muted)}.chat-empty span{font-size:2.5rem}.chat-message{display:flex;align-items:flex-end;gap:.65rem;max-width:76%;margin-bottom:1rem}.chat-message.mine{margin-left:auto;flex-direction:row-reverse}.chat-avatar{display:grid;place-items:center;flex:0 0 2rem;height:2rem;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#22d3ee);color:white;font-size:.7rem;font-weight:900}.chat-bubble{min-width:0;padding:.75rem .9rem;border:1px solid var(--border);border-radius:1rem 1rem 1rem .25rem;background:rgba(255,255,255,.06)}.chat-message.mine .chat-bubble{border-color:rgba(34,211,238,.25);border-radius:1rem 1rem .25rem 1rem;background:rgba(14,116,144,.2)}.chat-bubble header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.chat-bubble strong{color:#67e8f9;font-size:.78rem}.chat-bubble time{color:#64748b;font-size:.7rem}.chat-bubble p{margin:0;color:#e2e8f0;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}.chat-error{margin:0;padding:.65rem 1.25rem;background:rgba(239,68,68,.12);color:#fca5a5}.chat-composer{display:flex;align-items:flex-end;gap:.8rem;padding:1rem;border-top:1px solid var(--border);background:rgba(2,6,23,.55)}.chat-composer textarea{flex:1;min-height:48px;max-height:140px;padding:.8rem 1rem;border:1px solid var(--border);border-radius:1rem;background:#071225;color:white;font:inherit;resize:vertical}.chat-composer>div{display:flex;align-items:center;gap:.7rem}.chat-composer small{color:var(--muted);font-size:.72rem}.chat-composer .btn{min-width:90px}
.dating-page{position:relative}.dating-page::before,.dating-page::after{content:"♥";position:fixed;z-index:-1;color:rgba(244,114,182,.08);font-size:18rem;line-height:1;filter:blur(1px)}.dating-page::before{left:-3rem;top:18vh;transform:rotate(-18deg)}.dating-page::after{right:-2rem;bottom:4vh;transform:rotate(16deg)}.dating-page .eyebrow{color:#f9a8d4}.dating-page .chat-heading h1{background:linear-gradient(90deg,#fdf2f8,#f9a8d4,#c084fc);background-clip:text;-webkit-background-clip:text;color:transparent}.dating-page .chat-connection.online{color:#f9a8d4;border-color:rgba(244,114,182,.38);background:rgba(244,114,182,.08)}.dating-page .chat-connection.online i{background:#f472b6;box-shadow:0 0 12px #f472b6}.dating-page .chat-shell{border-color:rgba(244,114,182,.3);background:linear-gradient(160deg,rgba(76,29,67,.35),rgba(15,23,42,.94));box-shadow:0 22px 70px rgba(190,24,93,.16)}.dating-page .chat-messages{background:radial-gradient(circle at 15% 15%,rgba(244,114,182,.09),transparent 28%),radial-gradient(circle at 85% 80%,rgba(192,132,252,.08),transparent 30%)}.dating-page .chat-empty span{font-size:3rem;filter:drop-shadow(0 0 14px rgba(244,114,182,.45))}.dating-page .chat-empty strong{color:#fbcfe8}.dating-page .chat-empty small{max-width:420px;text-align:center;line-height:1.5}.dating-page .chat-avatar{background:linear-gradient(135deg,#ec4899,#a855f7);box-shadow:0 0 16px rgba(236,72,153,.25)}.dating-page .chat-bubble{border-color:rgba(244,114,182,.2);background:rgba(80,30,66,.48)}.dating-page .chat-message.mine .chat-bubble{border-color:rgba(244,114,182,.38);background:linear-gradient(135deg,rgba(190,24,93,.34),rgba(126,34,206,.28))}.dating-page .chat-bubble strong{color:#f9a8d4}.dating-page .chat-composer{border-color:rgba(244,114,182,.24);background:rgba(49,14,40,.72)}.dating-page .chat-composer textarea{border-color:rgba(244,114,182,.3);background:rgba(24,10,25,.86)}.dating-page .chat-composer textarea:focus{outline:2px solid rgba(244,114,182,.38);border-color:#f472b6}.dating-page .chat-composer .btn{background:linear-gradient(135deg,#ec4899,#a855f7);box-shadow:0 8px 25px rgba(236,72,153,.25)}
.dating-members{margin-bottom:1.25rem;padding:1.25rem;border:1px solid rgba(244,114,182,.28);border-radius:1.3rem;background:linear-gradient(145deg,rgba(80,30,66,.34),rgba(30,20,45,.72));box-shadow:0 16px 45px rgba(190,24,93,.1)}.dating-members-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.dating-members-heading h2{margin:0 0 .3rem;color:#fdf2f8}.dating-members-heading p{margin:0;color:var(--muted)}.dating-members-heading>span{flex:0 0 auto;padding:.4rem .65rem;border-radius:999px;background:rgba(244,114,182,.12);color:#f9a8d4;font-size:.78rem;font-weight:850}.dating-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.dating-profile-card{display:flex;align-items:center;gap:.8rem;padding:.85rem;border:1px solid rgba(244,114,182,.16);border-radius:1rem;background:rgba(255,255,255,.04)}.dating-profile-card.current{border-color:rgba(244,114,182,.48);background:rgba(244,114,182,.1)}.dating-profile-avatar{position:relative;display:grid;place-items:center;flex:0 0 2.8rem;height:2.8rem;border-radius:50%;background:linear-gradient(135deg,#ec4899,#9333ea);color:white;font-size:.78rem;font-weight:900}.dating-profile-avatar span{position:absolute;right:-.4rem;bottom:-.35rem;font-size:1rem}.dating-profile-card>div:last-child{min-width:0}.dating-profile-card strong,.dating-profile-card small,.dating-profile-card time{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dating-profile-card strong{color:#fdf2f8}.dating-profile-card small{margin-top:.15rem;color:#f9a8d4;font-size:.75rem}.dating-profile-card time{margin-top:.25rem;color:#64748b;font-size:.68rem}.dating-no-members{padding:1.2rem;border:1px dashed rgba(244,114,182,.28);border-radius:1rem;color:#f9a8d4;text-align:center}.dating-members-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(244,114,182,.16)}.dating-members-actions p{margin:0;color:#cbd5e1;line-height:1.5}.dating-members-actions .btn{flex:0 0 auto}.dating-join-button{background:linear-gradient(135deg,#ec4899,#a855f7);box-shadow:0 8px 25px rgba(236,72,153,.25)}.dating-page-error{margin:0 0 1rem;border-radius:.8rem}.dating-chat-shell{margin-top:1.25rem}
.dating-profile-card strong em{display:inline-block;margin-left:.3rem;padding:.12rem .35rem;border-radius:999px;background:rgba(251,191,36,.12);color:#fcd34d;font-size:.58rem;font-style:normal;text-transform:uppercase}
.dating-greeting-button{flex:0 0 auto;margin-left:auto;padding:.45rem .6rem;border:1px solid rgba(244,114,182,.3);border-radius:.7rem;background:rgba(244,114,182,.1);color:#fbcfe8;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.dating-greeting-button:hover{background:rgba(244,114,182,.2)}.dating-greeting-button:disabled{opacity:.5}.chat-bubble strong em{margin-left:.3rem;color:#f9a8d4;font-size:.6rem;font-style:normal;text-transform:uppercase}
.nav .nav-dating{display:inline-flex;align-items:center;gap:.3rem;padding:.42rem .7rem;border:1px solid rgba(244,114,182,.45);border-radius:999px;background:linear-gradient(135deg,rgba(236,72,153,.2),rgba(168,85,247,.2));color:#fbcfe8;box-shadow:0 0 18px rgba(236,72,153,.14);font-weight:900}.nav .nav-dating span{color:#f472b6;animation:love-pulse 1.6s ease-in-out infinite}.nav .nav-dating:hover{border-color:#f472b6;color:white;background:linear-gradient(135deg,rgba(236,72,153,.35),rgba(168,85,247,.3))}@keyframes love-pulse{50%{transform:scale(1.2);filter:drop-shadow(0 0 5px #f472b6)}}.dating-members-actions>div{display:flex;gap:.6rem}.dating-edit-button{background:rgba(244,114,182,.15);color:#fbcfe8}.dating-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;padding:1rem;border:1px solid rgba(244,114,182,.22);border-radius:1rem;background:rgba(24,10,25,.45)}.dating-profile-form .form-field label{display:block;margin-bottom:.4rem;color:#fbcfe8;font-size:.82rem;font-weight:800}.dating-profile-form input,.dating-profile-form select{width:100%;padding:.75rem .85rem;border:1px solid rgba(244,114,182,.28);border-radius:.75rem;background:#180f1d;color:white;font:inherit}.dating-profile-form-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:1rem}.dating-profile-form-actions small{color:var(--muted)}
.auth-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.auth-card select,.auth-card input[type="number"]{width:100%;padding:.75rem .85rem;border:1px solid var(--border);border-radius:.75rem;background:#071225;color:white;font:inherit}
.wheel-game .lucky-wheel{border-color:rgba(255,248,220,.9);background:conic-gradient(#f59e0b 0 12.5%,#dc2626 12.5% 25%,#f97316 25% 37.5%,#ca8a04 37.5% 50%,#16a34a 50% 62.5%,#ea580c 62.5% 75%,#be123c 75% 87.5%,#a16207 87.5% 100%);box-shadow:0 18px 60px rgba(245,158,11,.28),inset 0 0 0 2px rgba(69,26,3,.5)}.wheel-game .wheel-hub{background:#451a03;color:#fde68a}.wheel-game .game-number{background:rgba(245,158,11,.16);color:#fcd34d}
.wheel-game .lucky-wheel{transition-duration:5s;transition-timing-function:cubic-bezier(.08,.72,.12,1)}
.nav .nav-jobs{color:#a7f3d0;font-weight:800}.jobs-page{padding-top:4rem;padding-bottom:4rem}.jobs-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.5rem}.jobs-hero>div{max-width:760px}.jobs-hero h1{margin:.35rem 0 .7rem;color:white;font-size:clamp(2.7rem,7vw,5rem)}.jobs-hero p:last-child{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.7}.job-form{margin-bottom:1.5rem;padding:1.4rem;border:1px solid rgba(34,197,94,.3);border-radius:1.4rem;background:linear-gradient(145deg,rgba(6,78,59,.2),rgba(15,23,42,.94));box-shadow:var(--shadow)}.job-form-heading{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.job-form-heading>div{display:flex;align-items:center;gap:.7rem}.job-form-heading span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.8rem;background:rgba(34,197,94,.14);color:#6ee7b7}.job-form-heading h2{margin:0;color:white}.job-form-heading p{margin:0;max-width:520px;color:var(--muted)}.job-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.job-form .form-field label{display:block;margin-bottom:.4rem;color:#d1fae5;font-size:.82rem;font-weight:800}.job-form input,.job-form select,.job-form textarea,.jobs-toolbar select{width:100%;padding:.8rem .9rem;border:1px solid var(--border);border-radius:.75rem;background:#071225;color:white;font:inherit}.job-form textarea{min-height:120px;resize:vertical}.job-wide{grid-column:1/-1}.job-form-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.job-form-actions small{color:var(--muted)}.jobs-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.25rem 0;padding:1rem 1.2rem;border:1px solid var(--border);border-radius:1rem;background:rgba(255,255,255,.04)}.jobs-toolbar strong,.jobs-toolbar span{display:block}.jobs-toolbar strong{color:white}.jobs-toolbar span{margin-top:.2rem;color:var(--muted);font-size:.8rem}.jobs-toolbar select{width:min(100%,280px)}.jobs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.job-card{display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--border);border-radius:1.25rem;background:var(--surface);box-shadow:var(--shadow);transition:transform .2s,border-color .2s}.job-card:hover{transform:translateY(-3px);border-color:rgba(34,197,94,.35)}.job-card header{display:flex;gap:.9rem}.job-company-mark{display:grid;place-items:center;flex:0 0 3rem;height:3rem;border-radius:.9rem;background:linear-gradient(135deg,#10b981,#22d3ee);color:#032018;font-weight:950}.job-card header>div:last-child{min-width:0}.job-card header span{color:#6ee7b7;font-size:.72rem;font-weight:850;text-transform:uppercase}.job-card h2{margin:.2rem 0;color:white;font-size:1.3rem}.job-card header strong{color:#cbd5e1;font-size:.86rem}.job-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.job-meta span{padding:.35rem .55rem;border-radius:999px;background:rgba(255,255,255,.06);color:#cbd5e1;font-size:.75rem}.job-card>p,.job-card details p{color:var(--muted);line-height:1.6;white-space:pre-line}.job-card>p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical}.job-card details{margin-top:.4rem;color:#a7f3d0}.job-card summary{cursor:pointer;font-size:.82rem;font-weight:800}.job-card footer{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--border)}.job-card footer small,.job-card footer strong,.job-card footer time{display:block}.job-card footer small,.job-card footer time{color:var(--muted);font-size:.7rem}.job-card footer strong{margin:.15rem 0;color:#e2e8f0;font-size:.82rem}.job-contact{padding:.6rem .8rem;border-radius:.7rem;background:#10b981;color:#032018;font-size:.82rem;font-weight:900;text-decoration:none}.jobs-state,.jobs-empty{padding:3rem;border:1px dashed var(--border);border-radius:1.2rem;color:var(--muted);text-align:center}.jobs-empty span{font-size:3rem}.jobs-empty h2{color:white}
.home-hero{position:relative;overflow:hidden;padding:5.5rem 0 4rem;background:radial-gradient(circle at 75% 25%,rgba(34,211,238,.15),transparent 24%),radial-gradient(circle at 12% 80%,rgba(124,58,237,.16),transparent 27%),#030712}.home-hero-glow{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent)}.home-hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:4rem;align-items:center;min-height:570px}.home-kicker{display:inline-flex;align-items:center;gap:.55rem;color:#67e8f9;font-size:.76rem;font-weight:900;letter-spacing:.14em}.home-kicker i{width:.55rem;height:.55rem;border-radius:50%;background:#22c55e;box-shadow:0 0 12px #22c55e}.home-hero-copy h1{max-width:700px;margin:1rem 0 1.2rem;background:linear-gradient(100deg,#fff 15%,#a5f3fc 60%,#c4b5fd);background-clip:text;-webkit-background-clip:text;color:transparent;font-size:clamp(3rem,6.5vw,5.5rem);line-height:.98;letter-spacing:-.05em}.home-hero-copy>p{max-width:660px;margin:0;color:#b6c2d2;font-size:1.08rem;line-height:1.8}.home-hero-actions{display:flex;gap:.8rem;margin-top:1.8rem}.home-hero-actions .outline,.home-final-cta .outline{border-color:var(--border);background:rgba(255,255,255,.04);color:white}.home-hero-actions .outline span{margin-left:.45rem}.home-trust-row{display:flex;flex-wrap:wrap;gap:1.1rem;margin-top:1.6rem;color:#94a3b8;font-size:.78rem}.home-trust-row b{color:#6ee7b7}.home-hero-visual{position:relative;padding:1rem}.home-hero-visual>.editable-image{height:470px;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:2rem;box-shadow:0 30px 90px rgba(0,0,0,.5);transform:rotate(1.5deg)}.home-hero-visual>.editable-image img{filter:saturate(.8) contrast(1.05)}.home-floating-card{position:absolute;display:flex;align-items:center;gap:.7rem;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.16);border-radius:1rem;background:rgba(3,7,18,.85);box-shadow:0 14px 40px rgba(0,0,0,.45);backdrop-filter:blur(14px)}.home-floating-card>span{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:.7rem;background:rgba(34,211,238,.12)}.home-floating-card strong,.home-floating-card small{display:block}.home-floating-card strong{color:white;font-size:.82rem}.home-floating-card small{margin-top:.15rem;color:var(--muted);font-size:.68rem}.card-jobs{left:-1rem;bottom:4rem}.card-connect{right:-1rem;top:4rem}.card-connect>span{color:#f472b6;background:rgba(244,114,182,.12)}
.home-section{padding:5rem 0}.home-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2rem}.home-section-heading>div{max-width:620px}.home-section-heading h2,.home-community-copy h2,.home-final-cta h2{margin:.45rem 0 0;color:white;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.08;letter-spacing:-.035em}.home-section-heading>p{max-width:420px;margin:0;color:var(--muted);line-height:1.65}.home-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.home-feature-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:315px;padding:1.4rem;border:1px solid var(--border);border-radius:1.3rem;background:rgba(15,23,42,.7);text-decoration:none;transition:transform .25s,border-color .25s,background .25s}.home-feature-card::after{content:"";position:absolute;right:-45px;bottom:-45px;width:130px;height:130px;border-radius:50%;background:var(--card-glow);filter:blur(35px);opacity:.26}.home-feature-card:hover{transform:translateY(-5px);border-color:var(--card-color);background:rgba(15,23,42,.92)}.home-feature-icon{display:grid;place-items:center;width:3rem;height:3rem;margin-bottom:1.4rem;border-radius:.9rem;background:var(--card-glow);font-size:1.35rem}.home-feature-card small{color:var(--card-color);font-weight:900;letter-spacing:.1em}.home-feature-card h3{margin:.5rem 0;color:white;font-size:1.45rem}.home-feature-card p{margin:0 0 1.3rem;color:var(--muted);line-height:1.65}.home-feature-card b{z-index:1;margin-top:auto;color:var(--card-color);font-size:.84rem}.feature-jobs{--card-color:#6ee7b7;--card-glow:rgba(16,185,129,.17)}.feature-services{--card-color:#67e8f9;--card-glow:rgba(34,211,238,.15)}.feature-dating{--card-color:#f9a8d4;--card-glow:rgba(236,72,153,.16)}.feature-games{--card-color:#fcd34d;--card-glow:rgba(245,158,11,.16)}.feature-tech{--card-color:#c4b5fd;--card-glow:rgba(139,92,246,.17)}.feature-iot{--card-color:#93c5fd;--card-glow:rgba(59,130,246,.16)}
.home-community{background:linear-gradient(180deg,transparent,rgba(124,58,237,.07),transparent)}.home-community-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:4rem;align-items:center}.home-community-copy>p:not(.eyebrow){max-width:680px;color:var(--muted);line-height:1.75}.home-benefits{display:grid;gap:.8rem;margin-top:1.8rem}.home-benefits>div{display:flex;gap:1rem;padding:1rem;border-left:2px solid rgba(34,211,238,.3);background:linear-gradient(90deg,rgba(34,211,238,.05),transparent)}.home-benefits>div>span{color:#67e8f9;font-size:.75rem;font-weight:900}.home-benefits strong,.home-benefits small{display:block}.home-benefits strong{color:white}.home-benefits small{margin-top:.25rem;color:var(--muted)}.home-member-card{padding:2rem;border:1px solid rgba(251,191,36,.25);border-radius:1.6rem;background:radial-gradient(circle at top right,rgba(251,191,36,.13),transparent 32%),rgba(15,23,42,.85);box-shadow:var(--shadow)}.home-member-medal{font-size:3.2rem}.home-member-card>p:first-of-type{margin:1.1rem 0 .35rem;color:#fcd34d;font-size:.72rem;font-weight:900;letter-spacing:.12em}.home-member-card h3{margin:0;color:white;font-size:1.7rem}.home-member-card>p:last-of-type{color:var(--muted);line-height:1.65}.home-ranks{display:flex;align-items:center;margin:1.5rem 0}.home-ranks span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:rgba(255,255,255,.06)}.home-ranks i{height:1px;flex:1;background:linear-gradient(90deg,#92400e,#fcd34d,#67e8f9)}.home-member-card .btn{width:100%;background:linear-gradient(135deg,#f59e0b,#eab308);color:#271600}.home-final-cta{padding:2rem 0 5rem}.home-final-cta>.container{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.4rem;border:1px solid rgba(34,211,238,.25);border-radius:1.6rem;background:radial-gradient(circle at right,rgba(34,211,238,.16),transparent 35%),linear-gradient(135deg,rgba(14,116,144,.15),rgba(76,29,149,.13))}.home-final-cta>.container>div:first-child{max-width:700px}.home-final-cta h2{font-size:clamp(1.8rem,4vw,3rem)}.home-final-cta p:last-child{margin-bottom:0;color:var(--muted)}.home-final-cta>.container>div:last-child{display:flex;gap:.7rem;flex:0 0 auto}
.home-hero-visual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.home-hero-visual>.editable-image{grid-column:1/-1}.home-floating-card{position:static}.card-jobs,.card-connect{transform:translateY(-.2rem)}
.admin-features-card{margin-bottom:1.25rem}.admin-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.admin-feature-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:.9rem;background:rgba(255,255,255,.035)}.admin-feature-item strong,.admin-feature-item small{display:block}.admin-feature-item strong{color:#e2e8f0}.admin-feature-item small{margin-top:.2rem;color:var(--muted);font-size:.72rem}.feature-toggle{position:relative;flex:0 0 2.8rem;width:2.8rem;height:1.55rem;padding:0;border:1px solid var(--border);border-radius:999px;background:#334155;cursor:pointer;transition:.2s}.feature-toggle span{position:absolute;left:.17rem;top:.16rem;width:1.08rem;height:1.08rem;border-radius:50%;background:#cbd5e1;transition:.2s}.feature-toggle.enabled{border-color:rgba(34,197,94,.45);background:#15803d}.feature-toggle.enabled span{left:1.35rem;background:white}.feature-toggle:disabled{cursor:not-allowed;opacity:.55}.admin-feature-note{margin:1rem 0 0;color:#fcd34d;font-size:.82rem}
.site-footer { padding: 1rem 0 2rem; }
.worker-page{padding-top:4rem;padding-bottom:5rem}.worker-card{max-width:860px;margin:auto;padding:2rem;border:1px solid rgba(34,197,94,.25);border-radius:1.5rem;background:radial-gradient(circle at top right,rgba(34,197,94,.12),transparent 35%),var(--surface);box-shadow:var(--shadow)}.worker-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.worker-heading>div{max-width:620px}.worker-heading h1{margin:.35rem 0 .8rem;color:white;font-size:clamp(2.2rem,5vw,3.6rem)}.worker-heading p:last-child{color:var(--muted);line-height:1.7}.worker-status{flex:0 0 auto;padding:.55rem .8rem;border-radius:999px;background:rgba(148,163,184,.12);color:#94a3b8;font-size:.72rem;font-weight:900;letter-spacing:.08em}.worker-status.online{background:rgba(34,197,94,.15);color:#86efac;box-shadow:0 0 20px rgba(34,197,94,.12)}.worker-location-panel{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:.75rem;margin:1.6rem 0}.worker-location-panel>div{padding:1rem;border:1px solid var(--border);border-radius:.9rem;background:rgba(255,255,255,.035)}.worker-location-panel small,.worker-location-panel strong{display:block}.worker-location-panel small{margin-bottom:.35rem;color:var(--muted);font-size:.72rem}.worker-location-panel strong{color:#e2e8f0;font-size:.9rem}.availability-control{display:flex;align-items:center;gap:1rem;padding:1.2rem;border:1px solid rgba(34,197,94,.22);border-radius:1rem;background:rgba(34,197,94,.055);cursor:pointer}.availability-control>input{position:absolute;opacity:0;pointer-events:none}.availability-switch{position:relative;flex:0 0 3.4rem;height:1.9rem;border-radius:999px;background:#334155;transition:.2s}.availability-switch i{position:absolute;top:.2rem;left:.2rem;width:1.5rem;height:1.5rem;border-radius:50%;background:#cbd5e1;transition:.2s}.availability-control>input:checked+.availability-switch{background:#16a34a}.availability-control>input:checked+.availability-switch i{left:1.7rem;background:white}.availability-control>input:disabled~*{opacity:.6}.availability-control strong,.availability-control small{display:block}.availability-control strong{color:white}.availability-control small{margin-top:.25rem;color:var(--muted)}.worker-message{margin-top:1rem;color:var(--muted)}.worker-message.success{color:#86efac}.worker-privacy{margin:1.2rem 0 0;color:#94a3b8;font-size:.78rem;line-height:1.6}.worker-signin{margin-top:1.5rem;padding:1.2rem;border:1px solid var(--border);border-radius:1rem}.worker-signin p{color:var(--muted)}
.footer-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.95rem;
}
.footer-links { display: flex; gap: 1rem; flex-wrap: wrap; }
.footer-links a { text-decoration: none; color: var(--muted); }
.footer-links a:hover { color: white; }
.admin-workers-card { margin-bottom: 1.25rem; }
.worker-table { min-width: 900px; }
.worker-table td { vertical-align: top; }
.worker-status.approved { background: rgba(34,197,94,.15); color: #86efac; }
.worker-status.pending { background: rgba(245,158,11,.14); color: #fcd34d; }
.worker-status.suspended { background: rgba(239,68,68,.14); color: #fca5a5; }
.worker-application { margin-top: 1.5rem; padding: 1.3rem; border: 1px solid var(--border); border-radius: 1rem; background: rgba(255,255,255,.035); }
.worker-application h2 { margin-top: 0; color: white; }
.worker-application p { color: var(--muted); line-height: 1.65; }
.worker-application.pending { border-color: rgba(245,158,11,.3); }
.worker-application.suspended { border-color: rgba(239,68,68,.3); }
.worker-jobs { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--border); }
.worker-jobs-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.worker-jobs-heading h2 { margin: 0; color: white; }
.worker-jobs-heading p { margin: .3rem 0 0; color: var(--muted); }
.worker-job-list { display: grid; gap: 1rem; margin-top: 1rem; }
.worker-job-card { padding: 1.2rem; border: 1px solid rgba(34,211,238,.22); border-radius: 1rem; background: rgba(34,211,238,.045); }
.worker-job-card h3 { margin: .7rem 0 .25rem; color: white; }
.worker-job-card p { color: var(--muted); }
.worker-job-card dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; }
.worker-job-card dl div { padding: .7rem; border-radius: .7rem; background: rgba(255,255,255,.04); }
.worker-job-card dt { color: var(--muted); font-size: .7rem; }
.worker-job-card dd { margin: .25rem 0 0; color: white; font-weight: 700; }
.worker-job-card a:not(.btn) { color: #67e8f9; }
.worker-job-actions { display: flex; gap: .7rem; }
.worker-job-card.offer { border-color: rgba(245,158,11,.3); background: rgba(245,158,11,.055); }
.admin-distribute-button { padding: .55rem .8rem; white-space: nowrap; }
.admin-waiting { color: #fcd34d; font-size: .78rem; }
.stale-location { color: #fca5a5 !important; }
.worker-status-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; margin-bottom: 1.2rem; }
.worker-status-summary > div { padding: 1rem; border: 1px solid var(--border); border-radius: .9rem; background: rgba(255,255,255,.035); }
.worker-status-summary strong,.worker-status-summary span { display: block; }
.worker-status-summary strong { color: white; font-size: 1.7rem; }
.worker-status-summary span { margin-top: .25rem; color: var(--muted); font-size: .78rem; }
.worker-status-summary .pending { border-color: rgba(245,158,11,.28); }
.worker-status-summary .online { border-color: rgba(34,197,94,.3); }
.worker-status-summary .suspended { border-color: rgba(239,68,68,.3); }
.worker-approval-pending { color: #fcd34d; }
.worker-approval-approved { color: #86efac; }
.worker-approval-suspended { color: #fca5a5; }
.order-price-card { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: 1rem 0; padding: 1.15rem 1.3rem; border: 1px solid rgba(34,197,94,.3); border-radius: 1rem; background: rgba(34,197,94,.07); }
.order-price-card span,.order-price-card strong { display: block; }
.order-price-card span { color: #a7f3d0; font-size: .78rem; font-weight: 800; }
.order-price-card strong { margin-top: .2rem; color: white; font-size: 1.8rem; }
.order-price-card small { color: var(--muted); text-align: right; }
.order-final-price { color: #a7f3d0 !important; }
.admin-pricing-card { margin-bottom: 1.25rem; }
.pricing-admin-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .75rem; }
.pricing-admin-grid label span { display: block; margin-bottom: .35rem; color: var(--muted); font-size: .76rem; }
.pricing-admin-grid input,.admin-order-price input { width: 100%; padding: .6rem .7rem; border: 1px solid var(--border); border-radius: .65rem; background: #071225; color: white; font: inherit; }
.pricing-admin-actions { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 1rem; }
.pricing-admin-actions small { color: var(--muted); }
.admin-order-price { min-width: 170px; }
.admin-order-price input { margin-top: .45rem; font-size: .78rem; }
.admin-order-price .btn { margin-top: .45rem; padding: .5rem .7rem; }
.worker-job-price strong { color: #86efac; font-size: 1.15rem; }
.admin-security-card { margin-bottom: 1.25rem; border-color: rgba(139,92,246,.3); }
.admin-security-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .75rem; }
.admin-security-grid label { padding: .85rem; border: 1px solid var(--border); border-radius: .8rem; background: rgba(139,92,246,.055); }
.admin-security-grid label > span,.admin-security-grid label > small { display: block; }
.admin-security-grid label > span { margin-bottom: .45rem; color: #e2e8f0; font-weight: 800; }
.admin-security-grid select { width: 100%; padding: .55rem; border: 1px solid var(--border); border-radius: .6rem; background: #071225; color: white; }
.admin-security-grid small { margin-top: .4rem; color: var(--muted); font-size: .68rem; }
.security-restricted { position: relative; min-height: 150px; overflow: hidden; pointer-events: none; }
.security-restricted > * { opacity: .12; filter: blur(2px); }
.security-restricted::after { content: "Không đủ cấp độ bảo mật"; position: absolute; inset: 0; display: grid; place-items: center; color: #fca5a5; background: rgba(3,7,18,.72); font-weight: 900; letter-spacing: .04em; }

@media (max-width: 860px) {
  .hero-inner, .control-shell { grid-template-columns: 1fr; }
  .home-hero-grid,.home-community-grid{grid-template-columns:1fr}.home-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero-visual{max-width:620px;margin:auto;width:100%}
  .feature-grid, .card-grid, .hero-meta { grid-template-columns: 1fr; }
  .visual-frame { width: 100%; max-width: 100%; }
  .hero-visual { justify-content: center; }
}

@media (max-width: 640px) {
  .worker-card{padding:1.25rem}.worker-heading{flex-direction:column}.worker-location-panel{grid-template-columns:1fr}.worker-status{align-self:flex-start}
  .worker-jobs-heading{align-items:stretch;flex-direction:column}.worker-job-card dl{grid-template-columns:1fr}
  .worker-job-actions{flex-direction:column}
  .worker-status-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .order-price-card,.pricing-admin-actions{align-items:stretch;flex-direction:column}.order-price-card small{text-align:left}.pricing-admin-grid{grid-template-columns:1fr}
  .admin-security-grid{grid-template-columns:1fr}
  .home-hero-visual{grid-template-columns:1fr}.home-hero-visual>.editable-image{grid-column:auto}.card-jobs,.card-connect{transform:none}
  .admin-feature-grid{grid-template-columns:1fr}
  .site-header { padding: 0.8rem 0; }
  .nav-bar { flex-direction: column; align-items: flex-start; }
  .hero-banner { padding: 2rem 0 1.5rem; }
  .hero-copy h1 {
    font-size: 2.2rem;
    line-height: 1.1;
  }
  .hero-copy p {
    font-size: 1rem;
  }
  .hero-actions {
    flex-direction: column;
  }
  .hero-meta {
    grid-template-columns: 1fr;
  }
  .hero-visual {
    margin-top: 1.5rem;
  }
  .feature-grid { grid-template-columns: 1fr; }
  .section-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .control-row { flex-direction: column; align-items: stretch; }
  .server-input { width: 100%; }
  .button-group { flex-direction: column; }
  .btn { width: 100%; }
  .footer-inner { flex-direction: column; align-items: flex-start; }
  .admin-heading, .admin-card-title { align-items: flex-start; flex-direction: column; }
  .webxr-stage a-scene { min-height: 360px; height: 62vh; }
  .contact-grid { grid-template-columns: 1fr; }
  .xr-choice-grid { grid-template-columns: 1fr; }
  .services-grid,.service-detail-card { grid-template-columns:1fr; }.service-detail-visual{min-height:260px}.service-order-button{width:100%}
  .order-fields.two-columns,.order-fields.three-columns,.task-grid{grid-template-columns:1fr}.order-submit-bar{position:static;align-items:stretch;flex-direction:column}.order-channel-buttons{flex-direction:column}.order-submit-bar .btn{width:100%}
  .ios-ar-card { align-items:flex-start; flex-direction:column; }.quick-look-button { width:100%; }
  .games-grid,.wheel-layout{grid-template-columns:1fr}.wheel-stage{width:270px;height:270px}.wheel-label{transform-origin:center!important}.rps-buttons{grid-template-columns:repeat(3,1fr)}
  .chat-heading{align-items:flex-start;flex-direction:column}.chat-message{max-width:92%}.chat-composer{align-items:stretch;flex-direction:column}.chat-composer>div{justify-content:flex-end}.chat-composer .btn{width:auto}.chat-messages{height:58vh;min-height:340px}
  .dating-members-heading,.dating-members-actions{align-items:stretch;flex-direction:column}.dating-profile-grid{grid-template-columns:1fr}.dating-members-actions .btn{width:100%}
  .dating-members-actions>div,.dating-profile-form-actions{align-items:stretch;flex-direction:column}.dating-profile-form{grid-template-columns:1fr}.dating-profile-form-actions{grid-column:auto}.dating-greeting-button span{display:none}
  .auth-field-row{grid-template-columns:1fr}
  .jobs-hero,.job-form-heading,.job-form-actions,.jobs-toolbar{align-items:stretch;flex-direction:column}.job-form-grid,.jobs-grid{grid-template-columns:1fr}.job-wide{grid-column:auto}.jobs-toolbar select{width:100%}
  .home-hero{padding-top:3.5rem}.home-hero-grid{gap:2.5rem}.home-hero-copy h1{font-size:clamp(2.7rem,13vw,4rem)}.home-hero-actions,.home-section-heading,.home-final-cta>.container,.home-final-cta>.container>div:last-child{align-items:stretch;flex-direction:column}.home-hero-actions .btn{width:100%}.home-trust-row{align-items:flex-start;flex-direction:column}.home-hero-visual>.editable-image{height:360px}.card-jobs{left:0}.card-connect{right:0}.home-section{padding:3.5rem 0}.home-feature-grid{grid-template-columns:1fr}.home-community-grid{gap:2rem}.home-final-cta>.container{padding:1.5rem}
}
