:root {
  --bg: #f5f7fb;
  --card: #ffffff;
  --text: #111827;
  --muted: #667085;
  --line: #e6e9f0;
  --primary: #111827;
  --soft: #f3f5f9;
  --ok: #17b26a;
  --warn: #f79009;
  --bad: #f04438;
  --shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
  --radius: 22px;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: linear-gradient(180deg, #fff 0%, var(--bg) 100%); color: var(--text); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.page-shell { min-height: 100vh; padding: 14px; }
.wrap { width: 100%; max-width: 560px; margin: 0 auto; }
.wrap.narrow { max-width: 520px; }
.wrap.wide { max-width: 1120px; }
.card { background: var(--card); border: 1px solid rgba(17,24,39,.05); border-radius: var(--radius); box-shadow: var(--shadow); padding: 16px; margin-bottom: 14px; }
.compact-card { padding: 14px; }
.hero { padding: 24px 18px; }
h1, h2, h3 { margin: 0; line-height: 1.25; }
h1 { font-size: 28px; margin-bottom: 10px; }
h2 { font-size: 18px; }
p { margin: 0; }
.muted { color: var(--muted); }
.ok-text { color: var(--ok); font-weight: 700; }
.tiny { font-size: 12px; }
.small { font-size: 13px; }
.mini-kicker { font-size: 11px; letter-spacing: .15em; color: var(--muted); font-weight: 800; margin-bottom: 6px; }
.title-inline { font-size: 20px; font-weight: 800; }
.top-gap { margin-top: 10px; }
.label-gap { margin-bottom: 6px; display: block; }
.breakall { word-break: break-all; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.hidden-mirror { position: absolute; left: -9999px; top: -9999px; opacity: 0; pointer-events: none; }

.topbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.compact-topbar { align-items: flex-start; }
.sticky-head { position: sticky; top: 0; z-index: 9; padding: 10px 0; background: linear-gradient(180deg, rgba(245,247,251,.96), rgba(245,247,251,.75)); backdrop-filter: blur(8px); }

.stack-form { display: grid; gap: 10px; }
.compact-form { gap: 9px; }
input[type="text"], input[type="password"], input[type="number"], input[type="datetime-local"], textarea, select {
  width: 100%; background: #fff; border: 1px solid var(--line); border-radius: 15px; padding: 13px 14px; outline: none;
}
input:focus, textarea:focus, select:focus { border-color: #cbd5e1; box-shadow: 0 0 0 4px rgba(99,102,241,.08); }
textarea { resize: vertical; min-height: 140px; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  border: none; cursor: pointer; border-radius: 15px; padding: 13px 15px; font-weight: 800;
}
.btn.primary { background: var(--primary); color: #fff; }
.btn.soft { background: var(--soft); color: var(--text); }
.btn.ghost { background: #fff; color: var(--text); border: 1px solid var(--line); }
.btn.danger { background: #fff1f2; color: var(--bad); }
.small-btn { padding: 10px 12px; font-size: 13px; border-radius: 12px; }
.full-btn { width: 100%; }
.button-row { display: flex; gap: 10px; flex-wrap: wrap; }
.small-gap { gap: 8px; }

.form-message { border-radius: 14px; padding: 10px 12px; font-size: 14px; min-height: 16px; }
.form-message:empty { display: none; }
.success { background: #ecfdf3; color: #027a48; }
.error { background: #fef3f2; color: #b42318; }

.toast {
  position: fixed; left: 50%; bottom: 16px; transform: translateX(-50%) translateY(30px); z-index: 60;
  min-width: 140px; max-width: calc(100vw - 28px); text-align: center; padding: 10px 14px;
  border-radius: 999px; color: #fff; background: #111827; opacity: 0; pointer-events: none; transition: .18s ease;
}
.toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.toast.ok { background: #111827; }
.toast.bad { background: #b42318; }

.checkbox-row { display: flex; align-items: center; gap: 10px; font-weight: 600; }
.checkbox-row input { width: 18px; height: 18px; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.row-wrap { flex-wrap: wrap; }
.filters { display: flex; gap: 8px; flex-wrap: wrap; width: 100%; }
.mini-search { flex: 1; min-width: 150px; padding: 11px 12px; border-radius: 13px; border: 1px solid var(--line); }
.select-mini { max-width: 140px; }

.stats-grid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-bottom: 14px; }
.pro-stats { grid-template-columns: repeat(5, minmax(0,1fr)); }
.stat-card { background: var(--card); border: 1px solid rgba(17,24,39,.05); box-shadow: var(--shadow); border-radius: 18px; padding: 14px; }
.stat-card span { display: block; font-size: 12px; color: var(--muted); margin-bottom: 6px; }
.stat-card strong { font-size: 24px; }

.admin-grid { display: grid; gap: 14px; grid-template-columns: 350px minmax(0, 1fr); }
.left-stack { display: grid; gap: 14px; align-content: start; }
.room-create-grid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.full-span { grid-column: 1 / -1; }
.small-list { display: grid; gap: 10px; }
.small-line { border: 1px solid var(--line); border-radius: 14px; padding: 10px; background: #fff; }

.room-list-compact { display: grid; gap: 10px; }
.room-compact-item { border: 1px solid var(--line); border-radius: 18px; background: #fff; overflow: hidden; }
.room-compact-item > summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px; cursor: pointer; }
.room-compact-item > summary::-webkit-details-marker { display: none; }
.summary-main { min-width: 0; }
.summary-right { flex-shrink: 0; }
.room-compact-body { border-top: 1px solid var(--line); padding: 14px; }
.summary-inline { display: flex; align-items: center; justify-content: space-between; gap: 10px; cursor: pointer; }
.mini-info-grid { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.mini-info { border: 1px solid var(--line); border-radius: 14px; padding: 11px; background: #fff; }
.mini-info span { display: block; margin-bottom: 5px; }
.device-compact-list { display: grid; gap: 8px; }
.device-row-compact { display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid var(--line); border-radius: 14px; padding: 10px; }
.pill { display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; border-radius: 999px; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.pill.approved { background: #ecfdf3; color: #027a48; }
.pill.pending { background: #fff7ed; color: #b45309; }
.pill.rejected { background: #fef3f2; color: #b42318; }

.top-actions-card .quick-grid { display: grid; gap: 12px; }
.split-copy-row { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }
.copy-pill, .copy-block {
  width: 100%; border: 1px solid var(--line); background: #fff; color: var(--text); border-radius: 15px; padding: 13px 14px; text-align: center; font-weight: 700; cursor: pointer;
}
.copy-pill.copied, .copy-block.copied { background: var(--ok); color: #fff; border-color: var(--ok); }
.copy-block { font-size: 16px; }
.stack-tight { display: grid; gap: 8px; }
.account-display { display: grid; gap: 10px; }

@media (min-width: 768px) {
  .top-actions-card .quick-grid { grid-template-columns: 1.15fr .85fr; align-items: end; }
}

@media (max-width: 920px) {
  .admin-grid { grid-template-columns: 1fr; }
  .pro-stats { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 600px) {
  .page-shell { padding: 10px; }
  .card { padding: 13px; border-radius: 18px; }
  h1 { font-size: 24px; }
  h2 { font-size: 17px; }
  .pro-stats, .stats-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .room-create-grid { grid-template-columns: 1fr; }
  .mini-info-grid { grid-template-columns: 1fr 1fr; }
  .split-copy-row { grid-template-columns: 1fr 1fr; }
}

.admin-sticky-bar { gap: 10px; }
.bulk-toolbar, .device-bulk-bar {
  display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:10px 0 2px;
}
.check-wrap { display:inline-flex; align-items:center; justify-content:center; }
.check-wrap input { width:18px; height:18px; margin:0; }
.summary-check { margin-right: 2px; }
.device-row-compact { grid-template-columns: auto 1fr auto; display:grid; }
.device-id-text { min-width: 0; }
.app-tight .card { margin-bottom: 10px; }
.slim-head { padding-top: 6px; padding-bottom: 8px; }
.slim-card { padding: 12px; }
.no-bottom-gap { margin-bottom: 10px; }
.top-quick-grid { display:grid; gap:10px; }
.quick-head { font-size:12px; font-weight:800; color:var(--muted); margin-bottom:-2px; }
.account-display.is-empty { min-height: 42px; align-content:center; }
@media (min-width: 768px) {
  .top-quick-grid { grid-template-columns: 1.1fr 1fr 1fr; align-items:end; }
  .top-quick-grid .split-copy-row { grid-column: 1; }
}
@media (max-width: 600px) {
  .bulk-toolbar, .device-bulk-bar { gap:6px; }
  .bulk-toolbar .btn, .device-bulk-bar .btn { padding:9px 10px; font-size:12px; }
}

html, body { overflow-x: hidden; }
.wrap, .card, .top-quick-grid, .mobile-top-grid, .quick-col, .split-copy-row, .mobile-equal-row, .button-row, .account-display, .section-head { min-width: 0; }
.mobile-top-grid { grid-template-columns: 1fr; }
.mobile-top-grid .full-col { min-width: 0; }
.mobile-equal-row { grid-template-columns: repeat(2, minmax(0,1fr)); }
.mobile-fit-text, .mobile-action-btn, .copy-pill, .copy-block, .btn { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mobile-action-btn { min-width: 0; }
.copy-pill, .copy-block { min-width: 0; }
.activation-only-card { padding: 18px 14px; }
@media (max-width: 600px) {
  .button-row { display:grid; grid-template-columns: 1fr; }
  .mobile-top-grid { gap: 8px; }
  .mobile-action-btn, .copy-pill, .copy-block, .btn { width:100%; }
}

.top-meta-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:4px; }
.key-tail { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); }
.state-pill { display:inline-flex; align-items:center; justify-content:center; padding:4px 9px; border-radius:999px; font-weight:800; }
.state-pill.is-on { background:#ecfdf3; color:#027a48; }
.state-pill.is-off { background:#fef3f2; color:#b42318; }
.center-text { text-align:center; }
.top-gap-sm { margin-top: 6px; }
.top-gap-lg { margin-top: 18px; }
.top-gap-xs { margin-top: 4px; }
.single-col-grid { grid-template-columns: 1fr; }
.single-meta-line { min-height: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bottom-mini-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.bottom-mini-row .small-btn { padding: 7px 11px; }

#currentAccountMeta.meta-red-strong{color:#c62828;font-weight:700;}
.copy-block.copied,.copy-pill.copied,.copy-row button.copied,.copy-chip.copied{background:#16a34a !important;color:#fff !important;border-color:#16a34a !important;}

.suspicious-line{border-color:#fecaca;background:#fff7f7;}
.suspicious-line .check-wrap{align-self:flex-start;}

.compact-claim-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:8px;flex-wrap:wrap}
.claim-main{flex:1;min-width:180px}

.machine-search-input{width:100%;min-width:0}
.machine-tools-wrap{display:flex;flex-direction:column;gap:8px}
.filter-chip-row{display:flex;gap:8px;flex-wrap:wrap}
.filter-chip{border:none;border-radius:999px;padding:8px 12px;background:#eef2f7;color:#111;font-weight:700;cursor:pointer}
.filter-chip.active{background:#111827;color:#fff}
.machine-item{display:flex;align-items:center;justify-content:space-between;gap:10px}
.machine-item .claim-main{min-width:0;flex:1}
.machine-line-1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mini-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;background:#eef2f7;color:#111}
.mini-badge.warn{background:#fdeaea;color:#b42318}
@media (max-width:560px){.machine-item{align-items:flex-start;flex-direction:column}.machine-item .btn{width:100%}}

.quick-links-input-row{display:flex;flex-direction:column;gap:8px;}
.quick-links-input-row input { min-width: 0; }
.quick-links-input-row textarea{min-height:92px;max-height:180px;line-height:1.35;font-size:13px;padding:10px 12px;}
.quick-link-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;width:100%;}
.btn.quick-link-btn{background:#0ea5e9;color:#fff;padding:9px 4px;font-size:12px;min-height:36px;}
.center-note{text-align:center;padding:8px 0;}
@media(max-width:380px){.quick-link-grid{gap:4px}.btn.quick-link-btn{font-size:11px;padding-left:2px;padding-right:2px;min-height:34px;}}

.radio-row{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;}
.api-preview{white-space:pre-wrap;word-break:break-word;background:#0f172a;color:#fff;padding:12px;border-radius:12px;font-size:13px;overflow:auto;}

.btn.acc-new-btn { background: #0f172a; color: #fff; }
.btn.tiktok-btn { background: #7c3aed; color: #fff; }
.btn.link1-btn { background: #0ea5e9; color: #fff; }
.btn.link2-btn { background: #f59e0b; color: #fff; }
.btn.quick-link-btn{background:#0ea5e9;color:#fff;}

.twofa-inline-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  width:100% !important;
  margin-bottom:8px !important;
  flex-wrap:nowrap !important;
}
.twofa-left-group{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  min-width:0 !important;
  flex:0 1 auto !important;
}
.twofa-code-btn{
  min-width:78px !important;
  width:78px !important;
  max-width:78px !important;
  padding:5px 6px !important;
  font-size:14px !important;
  line-height:1 !important;
  border-radius:10px !important;
  background:#fff0f3 !important;
  color:#e11d48 !important;
  border:1px solid #f5c2cf !important;
  font-weight:800 !important;
  letter-spacing:.4px !important;
}
.twofa-code-btn.copied{
  background:#18a558 !important;
  color:#fff !important;
  border-color:#18a558 !important;
}
.twofa-ring-wrap{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
}
.twofa-ring{
  width:18px !important;
  height:18px !important;
  transform:rotate(-90deg);
}
.twofa-ring-bg,.twofa-ring-fg{
  fill:none;
  stroke-width:3.2;
  stroke-linecap:round;
}
.twofa-ring-bg{stroke:#e5e7eb;}
.twofa-ring-fg{
  stroke:#6366f1;
  stroke-dasharray:100.53 100.53;
  stroke-dashoffset:0;
  transition:stroke-dashoffset .9s linear, stroke .2s linear;
}
.twofa-countdown-text{
  min-width:22px;
  font-size:10px;
  font-weight:700;
  color:#4b5563;
  text-align:left;
}
.twofa-urgent .twofa-ring-fg{stroke:#ef4444;}
.twofa-urgent .twofa-code-btn{
  animation:twofaPulse .9s ease-in-out infinite;
}
.twofa-ring-wrap{transition:background .9s linear;}
@keyframes twofaPulse{
  0%{transform:scale(1);}
  50%{transform:scale(1.05);}
  100%{transform:scale(1);}
}
.remain-inline-pill{
  margin-left:auto !important;
  padding:4px 7px !important;
  font-size:11px !important;
  line-height:1 !important;
}
@media (max-width:560px){
  .twofa-inline-row{gap:6px !important;}
  .twofa-left-group{gap:5px !important;}
  .twofa-code-btn{
    min-width:74px !important;
    width:74px !important;
    max-width:74px !important;
    font-size:13px !important;
    padding:5px 5px !important;
  }
  .twofa-ring-wrap{
    width:16px !important;
    height:16px !important;
    flex-basis:16px !important;
  }
  .twofa-ring{
    width:16px !important;
    height:16px !important;
  }
  .twofa-countdown-text{
    min-width:20px;
    font-size:9px;
  }
  .remain-inline-pill{
    font-size:10px !important;
    padding:4px 6px !important;
  }
}

.twofa-ring-wrap{
  position:relative;
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  border-radius:999px;
  overflow:hidden;
}
.twofa-fill-base{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:#6366f1;
}
.twofa-fill-mask{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:rgba(255,255,255,0.92);
  transform-origin:center top;
  transform:scaleY(1);
  transition:transform .9s linear, background .2s linear;
}
.twofa-urgent .twofa-fill-base{ background:#ef4444; }

.twofa-ring-wrap{
  position:relative;
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  border-radius:999px;
  background:conic-gradient(#6366f1 0deg 360deg, #e5e7eb 360deg 360deg);
}
.twofa-ring-wrap::after{
  content:'';
  position:absolute;
  inset:3px;
  border-radius:999px;
  background:#fff;
}
.twofa-fill-base,.twofa-fill-mask,.twofa-ring,.twofa-ring-bg,.twofa-ring-fg{
  display:none !important;
}

.twofa-ring-wrap{
  position:relative !important;
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  background:#6366f1;
}
.twofa-ring-wrap::after{
  display:none !important;
  content:none !important;
}
.twofa-fill-base,
.twofa-fill-mask,
.twofa-ring,
.twofa-ring-bg,
.twofa-ring-fg{
  display:none !important;
}
.twofa-urgent .twofa-code-btn{
  animation:twofaPulse .9s ease-in-out infinite;
}
.twofa-ring-wrap{transition:background .9s linear;}
@media (max-width:560px){
  .twofa-ring-wrap{
    width:16px !important;
    height:16px !important;
    flex-basis:16px !important;
  }
}

.twofa-ring-wrap{
  position:relative !important;
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  background:conic-gradient(from -90deg, #6366f1 0deg 360deg, #e5e7eb 360deg 360deg) !important;
}
.twofa-ring-wrap::after{
  display:none !important;
  content:none !important;
}
.twofa-fill-base,
.twofa-fill-mask,
.twofa-ring,
.twofa-ring-bg,
.twofa-ring-fg{
  display:none !important;
}
@media (max-width:560px){
  .twofa-ring-wrap{
    width:16px !important;
    height:16px !important;
    flex-basis:16px !important;
  }
}

.twofa-ring-wrap{
  transform:rotate(-90deg) !important;
  transform-origin:center center !important;
}

.twofa-ring-wrap{
  position:relative !important;
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  transform:none !important;
  transform-origin:center center !important;
  background:conic-gradient(from -90deg, #6366f1 0deg 360deg, #e5e7eb 360deg 360deg) !important;
}
.twofa-ring-wrap::after{
  display:none !important;
  content:none !important;
}
.twofa-fill-base,
.twofa-fill-mask,
.twofa-ring,
.twofa-ring-bg,
.twofa-ring-fg{
  display:none !important;
}
@media (max-width:560px){
  .twofa-ring-wrap{
    width:16px !important;
    height:16px !important;
    flex-basis:16px !important;
  }
}

.twofa-ring-wrap{transform:none !important;transform-origin:center center !important;}

.twofa-code-btn{
  min-width:84px !important;
  width:84px !important;
  max-width:84px !important;
  letter-spacing:.8px !important;
  text-align:center !important;
  font-variant-numeric:tabular-nums;
}
@media (max-width:560px){
  .twofa-code-btn{
    min-width:78px !important;
    width:78px !important;
    max-width:78px !important;
  }
}

.copy-open-tiktok-box{
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:14px;
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.copy-open-toggle{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  font-weight:700;
}
.copy-open-toggle input{
  width:18px;
  height:18px;
}
.copy-delay-row{
  display:flex;
  align-items:center;
  gap:6px;
}
.copy-delay-row input{
  width:64px;
  padding:8px 9px;
  text-align:center;
}
@media (max-width:560px){
  .copy-open-tiktok-box{
    align-items:flex-start;
    flex-direction:column;
  }
}

.advanced-copy-box{
  align-items:flex-start;
  flex-direction:column;
}
.copy-open-title{
  font-size:13px;
  font-weight:800;
  color:#111827;
}
.advanced-copy-box .copy-open-toggle{
  width:100%;
  justify-content:flex-start;
}

.key-top-actions{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:7px;
  margin-top:10px;
}
.key-mini-btn{
  padding:10px 8px !important;
  border-radius:13px !important;
  font-size:12px !important;
  line-height:1.05 !important;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:nowrap;
}
@media (max-width:360px){
  .key-top-actions{gap:5px;}
  .key-mini-btn{font-size:11px !important;padding:9px 5px !important;}
}

.quick-login-box{
  border:1px solid #e5e7eb;
  background:#f8fafc;
  border-radius:14px;
  padding:10px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.quick-login-title{
  font-size:13px;
  font-weight:800;
  color:#111827;
}
.quick-login-line{
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:7px;
  align-items:center;
}
.quick-login-line input{
  min-width:0;
  padding:10px 11px;
}
@media (max-width:560px){
  .quick-login-line{
    grid-template-columns:1fr;
  }
}

.login-key-link-label{font-size:11px;}

.quick-login-copy-link{
  cursor:pointer;
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:12px;
  padding:10px;
  font-size:12px;
  color:#334155;
  user-select:none;
}
.quick-login-copy-link.copied{
  background:#18a558 !important;
  color:#fff !important;
  border-color:#18a558 !important;
}
.quick-login-line{
  grid-template-columns:1fr auto !important;
}
@media (max-width:560px){
  .quick-login-line{
    grid-template-columns:1fr !important;
  }
}

.quick-login-compact{
  gap:7px !important;
}
.quick-login-compact .quick-login-copy-link{
  width:100%;
}
.quick-key-btn{
  width:100%;
  padding:10px !important;
  border-radius:12px !important;
}

.accounts-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.accounts-action-row .btn {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  width: auto !important;
  padding-left: 7px !important;
  padding-right: 7px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}
.accounts-action-row .btn:first-child {
  flex: 1.35 1 0 !important;
}
@media (max-width: 360px) {
  .accounts-action-row { gap: 6px !important; }
  .accounts-action-row .btn {
    font-size: 11px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

.used-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.used-action-row .btn {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  width: auto !important;
  padding-left: 7px !important;
  padding-right: 7px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}
@media (max-width: 360px) {
  .used-action-row { gap: 6px !important; }
  .used-action-row .btn {
    font-size: 11px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

.used-note {
  margin-bottom: 8px;
  line-height: 1.35;
}
.key-expire-pill {
  padding: 7px 10px;
  border-radius: 999px;
  background: #fff3cd;
  color: #8a5a00;
  font-weight: 800;
  white-space: nowrap;
}
@media (max-width: 480px) {
  .key-expire-pill {
    font-size: 11px;
    padding: 6px 8px;
  }
}

.admin-pro-card{
  padding: 0 !important;
  overflow: hidden;
}
.admin-pro-head{
  padding: 16px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #fff, #fbfcff);
}
.admin-pro-filters{
  width: auto;
  min-width: 340px;
  justify-content: flex-end;
}
.admin-pro-toolbar{
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.admin-user-board{
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  min-height: 620px;
}
.admin-user-sidebar{
  border-right: 1px solid var(--line);
  background: #f8fafc;
  min-width: 0;
}
.admin-list-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  background: #fff;
  position: sticky;
  top: 0;
  z-index: 2;
}
.admin-user-list{
  display: grid;
  gap: 8px;
  padding: 10px;
  max-height: 720px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-user-row{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: stretch;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 16px;
  padding: 6px;
  background: transparent;
}
.admin-user-row.is-active{
  border-color: #cbd5e1;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15,23,42,.06);
}
.user-row-check-wrap{
  align-self: center;
  padding-left: 2px;
}
.admin-user-pick{
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px;
  text-align: left;
  border-radius: 13px;
}
.admin-user-pick:hover{ background: #fff; }
.admin-user-main{
  min-width: 0;
  display: grid;
  gap: 4px;
}
.admin-user-main strong,
.admin-user-main span{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-user-detail{
  min-width: 0;
  background: #fff;
  padding: 14px;
}
.admin-detail-empty{
  min-height: 260px;
  border: 1px dashed #cbd5e1;
  border-radius: 20px;
  display: grid;
  place-content: center;
  text-align: center;
  gap: 8px;
  color: #334155;
  background: #f8fafc;
}
.pro-detail-list .room-compact-item{
  display: none;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}
.pro-detail-list .room-compact-item.is-selected{
  display: block !important;
}
.pro-detail-list .room-compact-item > summary{
  display: none !important;
}
.pro-detail-list .room-compact-body{
  border-top: 0;
  padding: 0;
}
.pro-detail-list .room-update-form,
.pro-detail-list .room-api-form{
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 12px;
}
.pro-detail-list .device-details{
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 12px;
}
@media (max-width: 980px){
  .admin-pro-filters{ width: 100%; min-width: 0; justify-content: stretch; }
  .admin-user-board{ grid-template-columns: 1fr; min-height: auto; }
  .admin-user-sidebar{ border-right: 0; border-bottom: 1px solid var(--line); }
  .admin-user-list{
    grid-auto-flow: column;
    grid-auto-columns: minmax(230px, 74%);
    overflow-x: auto;
    overflow-y: hidden;
    max-height: none;
  }
  .admin-user-row{ min-width: 0; }
}
@media (max-width: 560px){
  .admin-pro-head{ padding: 13px; }
  .admin-pro-toolbar{ padding: 10px 13px !important; }
  .admin-user-detail{ padding: 12px; }
  .admin-user-list{ grid-auto-columns: minmax(210px, 88%); }
  .admin-user-pick{ grid-template-columns: 1fr; }
  .admin-user-pick .pill{ justify-self: start; }
}

.admin-full { max-width: 1480px; }
.admin-main-grid { display:grid; grid-template-columns: 1.35fr .9fr; gap:14px; align-items:start; }
.user-table-card { margin-top:14px; }
.admin-user-table-wrap { width:100%; overflow:auto; border:1px solid rgba(15,23,42,.08); border-radius:18px; }
.admin-user-table { width:100%; border-collapse:separate; border-spacing:0; min-width:980px; background:#fff; }
.admin-user-table th { text-align:left; font-size:12px; color:#64748b; font-weight:800; background:#f8fafc; padding:12px 10px; border-bottom:1px solid rgba(15,23,42,.08); position:sticky; top:0; z-index:1; }
.admin-user-table td { padding:12px 10px; border-bottom:1px solid rgba(15,23,42,.07); vertical-align:middle; }
.admin-user-table tr:hover td { background:#f8fbff; }
.user-cell-main { display:flex; flex-direction:column; gap:3px; }
.push-right { margin-left:auto; }
.admin-bottom-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }
.admin-user-page { max-width: 1320px; }
.user-detail-hero { display:flex; justify-content:space-between; gap:16px; align-items:center; }
.user-detail-hero h1 { margin:4px 0; font-size:30px; letter-spacing:-.04em; }
.hero-pills { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.user-detail-room-card .room-compact-item { display:block; }
.user-detail-room-card .room-compact-item > summary { border-radius:20px; }
.ua-line { margin-top:3px; line-height:1.35; }
.link-clean { color:inherit; text-decoration:none; }
.link-clean:hover { text-decoration:underline; }
@media (max-width: 760px) {
  .admin-main-grid, .admin-bottom-grid { grid-template-columns:1fr; }
  .user-detail-hero { align-items:flex-start; flex-direction:column; }
  .hero-pills { justify-content:flex-start; }
  .admin-user-table { min-width:850px; }
}

#nextAccBtn,
.btn.acc-new-btn {
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
  touch-action: manipulation;
}
#nextAccBtn * {
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
}

.copy-open-inline-row{
  display:flex;
  gap:8px;
  align-items:stretch;
  flex-wrap:wrap;
}
.copy-open-inline-row .copy-open-toggle{
  flex:1 1 180px;
  min-width:0;
}
@media(max-width:520px){
  .copy-open-inline-row{
    flex-wrap:nowrap;
    gap:6px;
  }
  .copy-open-inline-row .copy-open-toggle{
    flex:1 1 0;
    font-size:12px;
    padding-left:8px;
    padding-right:8px;
  }
  .copy-open-inline-row .copy-open-toggle span{
    line-height:1.15;
  }
}

.ua-block-box{margin-top:6px;padding:8px;border:1px solid rgba(220,38,38,.25);background:#fff1f2;border-radius:10px;}

.device-activated-now{border-color:#22c55e !important;background:#f0fdf4 !important;}
.device-bulk-activate{background:#16a34a !important;color:#fff !important;border-color:#16a34a !important;}

.device-search-bar{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.device-smart-search{
  flex:1 1 260px;
  width:100%;
  border:1px solid #d1d5db;
  border-radius:14px;
  padding:11px 13px;
  font-size:15px;
  font-weight:700;
  background:#fff;
  outline:none;
}
.device-smart-search:focus{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.device-row-compact.device-search-hidden{
  display:none !important;
}

.update-wrap{padding:18px 0 28px}
.update-card{max-width:920px;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:22px;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.update-badge{display:inline-block;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800;margin-bottom:10px}
.update-card h1{margin:4px 0 10px;font-size:30px;line-height:1.15;color:#991b1b}
.update-lead{margin:0 0 18px;color:#374151;font-size:16px;font-weight:600}
.update-step{border:1px solid #e5e7eb;border-radius:18px;padding:16px;margin-top:14px;background:#fcfcfd}
.step-title{font-size:19px;font-weight:900;color:#111827;margin-bottom:8px}
.step-text{margin:0;color:#374151;line-height:1.6;font-weight:600}
.copy-box{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.copy-box input{flex:1 1 360px;border:1px solid #d1d5db;border-radius:14px;padding:13px 14px;font-size:14px;background:#fff;font-weight:700;color:#1f2937}
.help-shot-wrap{margin-top:14px;border-radius:18px;overflow:hidden;border:1px solid #e5e7eb;background:#f9fafb}
.help-shot{display:block;width:100%;height:auto}
.update-tip{margin-top:16px;padding:14px 16px;border-radius:16px;background:#eff6ff;color:#1d4ed8;font-weight:800}
@media (max-width:720px){.update-card{padding:16px;border-radius:18px}.update-card h1{font-size:25px}.step-title{font-size:17px}.copy-box .btn{width:100%}}

.check-row{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:9px 12px;
  border:1px solid #e5e7eb;
  border-radius:14px;
  background:#f9fafb;
  font-weight:800;
  color:#111827;
}
.check-row input{width:18px;height:18px;accent-color:#2563eb;}
.auto-activate-row{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;}
.update-danger-step{background:#fff7f7;border-color:#fecaca;}
.shortcut-download-red{background:#dc2626!important;color:#fff!important;border-color:#b91c1c!important;font-weight:900;}
.clear-ok{display:inline-block;margin-left:10px;color:#15803d;font-weight:900;}
.clear-bad{display:inline-block;margin-left:10px;color:#b91c1c;font-weight:900;}

.tight-config-form{gap:8px;}
.quick-links-collapse{
  border:1px solid #e5e7eb;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.quick-links-collapse summary,
.quick-links-collapse .quick-links-summary{
  min-height:42px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
  font-weight:800;
  color:#111827;
  list-style:none;
  user-select:none;
}
.quick-links-collapse summary::-webkit-details-marker{display:none;}
.quick-links-collapse summary:after{
  content:'▾';
  font-size:13px;
  color:#64748b;
  transition:transform .16s ease;
}
.quick-links-collapse[open] summary:after{transform:rotate(180deg);}
.quick-count-badge{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  background:#eef6ff;
  color:#0369a1;
  font-size:12px;
  font-weight:900;
}
.quick-links-collapse .quick-links-input-row{
  padding:0 10px 10px;
  gap:6px;
}
.quick-links-collapse textarea#customUrlsInput{
  min-height:74px;
  max-height:138px;
  resize:vertical;
  font-size:13px;
  line-height:1.32;
  padding:9px 10px;
}
.quick-link-tools-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  flex-wrap:nowrap;
}
.quick-link-hint{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.quick-link-tool-buttons{
  display:flex;
  align-items:center;
  gap:5px;
  flex:0 0 auto;
}
.btn.micro-btn{
  min-height:30px;
  padding:6px 9px;
  font-size:12px;
  border-radius:10px;
  line-height:1;
}
.config-inline-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.config-inline-grid input{min-width:0;}
.compact-toggle-box{
  padding:8px 10px;
}
.copy-open-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.copy-open-grid-mini{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,auto));
  gap:6px;
  align-items:center;
}
.copy-open-toggle.mini-toggle{
  min-height:30px;
  padding:5px 7px;
  border-radius:10px;
  white-space:nowrap;
  font-size:12px;
}
.copy-open-toggle.mini-toggle input{margin-right:4px;}
@media(max-width:520px){
  .quick-links-collapse summary,
.quick-links-collapse .quick-links-summary{min-height:38px;padding:7px 9px;font-size:14px;}
  .quick-links-collapse .quick-links-input-row{padding:0 8px 8px;}
  .quick-link-tools-row{gap:4px;}
  .quick-link-hint{max-width:42%;font-size:11px;}
  .btn.micro-btn{padding:6px 7px;font-size:11px;min-height:28px;}
  .config-inline-grid{grid-template-columns:1fr 1fr;gap:6px;}
  .config-inline-grid input{font-size:13px;padding-left:9px;padding-right:9px;}
  .compact-toggle-box{padding:7px 8px;}
  .copy-open-topline{align-items:flex-start;gap:6px;}
  .copy-open-title{font-size:12px;line-height:1.2;min-width:58px;}
  .copy-open-grid-mini{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:100%;}
  .copy-open-toggle.mini-toggle{justify-content:center;padding:5px 4px;font-size:11px;}
}
@media(max-width:360px){
  .quick-link-hint{display:none;}
  .quick-link-tools-row{justify-content:flex-end;}
  .config-inline-grid{grid-template-columns:1fr;}
  .copy-open-topline{display:block;}
  .copy-open-grid-mini{margin-top:6px;}
}

@media(max-width:640px){
  .quick-links-collapse textarea#customUrlsInput{
    font-size:16px;
    line-height:1.35;
    min-height:76px;
    max-height:116px;
    resize:none;
    padding:9px 10px;
    -webkit-text-size-adjust:100%;
    touch-action:manipulation;
  }
  .quick-links-collapse textarea#customUrlsInput:focus{
    outline:2px solid #93c5fd;
    outline-offset:1px;
  }
  .tight-config-form input,
  .tight-config-form textarea,
  .tight-config-form button,
  .tight-config-form .btn{
    touch-action:manipulation;
  }
  .tight-config-form input{
    font-size:16px;
  }
  .config-inline-grid input{
    min-height:40px;
  }
}
@media(max-width:380px){
  .quick-links-collapse textarea#customUrlsInput{
    min-height:72px;
    max-height:104px;
  }
  .quick-links-collapse summary,
.quick-links-collapse .quick-links-summary{
    gap:5px;
  }
  .quick-count-badge{
    min-width:38px;
    padding:0 6px;
  }
}

.quick-link-editor-overlay[hidden]{display:none!important;}
.quick-link-editor-overlay{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:stretch;
  justify-content:center;
  padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
  background:rgba(15,23,42,.58);
  overscroll-behavior:contain;
  touch-action:none;
}
.quick-link-editor-shade{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.58);
}
.quick-link-editor-panel{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  max-width:760px;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:12px 12px calc(12px + env(safe-area-inset-bottom));
  box-sizing:border-box;
  background:#fff;
  color:#111827;
  touch-action:auto;
  overscroll-behavior:contain;
  animation:quickLinkEditorIn .14s ease-out;
}
@keyframes quickLinkEditorIn{
  from{transform:translateY(10px);opacity:.88;}
  to{transform:translateY(0);opacity:1;}
}
.quick-link-editor-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:42px;
  flex:0 0 auto;
}
.quick-link-editor-title-wrap{min-width:0;}
.quick-link-editor-title{
  font-size:17px;
  font-weight:900;
  line-height:1.15;
}
.quick-link-editor-sub{
  margin-top:2px;
  font-size:12px;
  color:#64748b;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.quick-count-badge.editor-count{
  flex:0 0 auto;
  height:28px;
  min-width:50px;
  font-size:13px;
}
.quick-count-badge.editor-count.is-over{
  background:#fff7ed;
  color:#c2410c;
}
.quick-link-editor-textarea{
  flex:1 1 auto;
  width:100%;
  min-height:0;
  resize:none;
  box-sizing:border-box;
  border:1px solid #cbd5e1;
  border-radius:16px;
  background:#f8fafc;
  color:#0f172a;
  font-size:16px;
  line-height:1.42;
  padding:12px;
  outline:none;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  touch-action:auto;
  overscroll-behavior:contain;
}
.quick-link-editor-textarea:focus{
  border-color:#60a5fa;
  box-shadow:0 0 0 4px rgba(59,130,246,.12);
  background:#fff;
}
.quick-link-editor-tools{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
.quick-link-editor-tools .editor-tool-btn{
  min-height:42px;
  border-radius:12px;
  font-size:13px;
  padding:8px 6px;
  width:100%;
}
.quick-link-editor-tools .editor-done-btn{
  font-weight:900;
}
.quick-link-editor-cancel{
  flex:0 0 auto;
  border:0;
  background:transparent;
  color:#64748b;
  font-weight:800;
  min-height:32px;
  font-size:12px;
  padding:4px;
}
.quick-link-editor-lock,
html.quick-link-editor-lock,
body.quick-link-editor-lock{
  overscroll-behavior:none!important;
  overflow:hidden!important;
  -webkit-overflow-scrolling:auto!important;
}
.mobile-editor-proxy{
  cursor:pointer;
  caret-color:transparent;
  -webkit-user-select:none;
  user-select:none;
}
@media(max-width:380px){
  .quick-link-editor-panel{padding:10px 10px calc(10px + env(safe-area-inset-bottom));gap:8px;}
  .quick-link-editor-title{font-size:16px;}
  .quick-link-editor-sub{font-size:11px;}
  .quick-link-editor-tools{gap:5px;}
  .quick-link-editor-tools .editor-tool-btn{font-size:12px;min-height:40px;}
}

.quick-link-numbered-box{
  --ql-font-size:13px;
  --ql-line-height:18px;
  --ql-pad-y:9px;
  --ql-pad-x:10px;
  display:flex;
  width:100%;
  min-width:0;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#f8fafc;
  overflow:hidden;
  box-sizing:border-box;
}
.quick-link-numbered-box:focus-within{
  border-color:#60a5fa;
  box-shadow:0 0 0 4px rgba(59,130,246,.12);
  background:#fff;
}
.quick-link-line-nums{
  flex:0 0 34px;
  width:34px;
  padding:var(--ql-pad-y) 0;
  border-right:1px solid #e2e8f0;
  background:#f1f5f9;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  line-height:var(--ql-line-height);
  text-align:center;
  user-select:none;
  overflow:hidden;
  box-sizing:border-box;
}
.quick-link-numbered-box:focus-within .quick-link-line-nums{
  background:#eff6ff;
  color:#2563eb;
}
.quick-link-line-nums-inner{
  will-change:transform;
}
.quick-link-line-nums-inner span{
  display:block;
  height:var(--ql-line-height);
  line-height:var(--ql-line-height);
}
.quick-link-numbered-box textarea,
.quick-links-collapse .quick-link-numbered-box textarea#customUrlsInput,
.quick-link-editor-numbered textarea.quick-link-editor-textarea{
  flex:1 1 auto;
  min-width:0;
  width:auto!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:none!important;
  background:transparent!important;
  color:#0f172a;
  font-size:var(--ql-font-size)!important;
  line-height:var(--ql-line-height)!important;
  padding:var(--ql-pad-y) var(--ql-pad-x)!important;
  margin:0!important;
  resize:none!important;
  white-space:pre;
  overflow:auto;
  box-sizing:border-box;
  -webkit-overflow-scrolling:touch;
}
.quick-link-main-numbered textarea#customUrlsInput{
  min-height:74px;
  max-height:138px;
}
.quick-link-editor-numbered{
  --ql-font-size:16px;
  --ql-line-height:23px;
  --ql-pad-y:12px;
  --ql-pad-x:12px;
  flex:1 1 auto;
  min-height:0;
  border-radius:16px;
}
.quick-link-editor-numbered .quick-link-line-nums{
  flex-basis:38px;
  width:38px;
  font-size:13px;
}
.quick-link-editor-numbered textarea.quick-link-editor-textarea{
  min-height:0!important;
  max-height:none!important;
  height:auto!important;
}
@media(max-width:640px){
  .quick-link-main-numbered{
    --ql-font-size:16px;
    --ql-line-height:22px;
    --ql-pad-y:9px;
    --ql-pad-x:10px;
  }
  .quick-link-main-numbered textarea#customUrlsInput{
    min-height:76px;
    max-height:116px;
    -webkit-text-size-adjust:100%;
    touch-action:pan-y;
  }
}
@media(max-width:380px){
  .quick-link-line-nums{flex-basis:30px;width:30px;font-size:11px;}
  .quick-link-editor-numbered .quick-link-line-nums{flex-basis:34px;width:34px;font-size:12px;}
}

.quick-login-mini-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  width:100%;
}
.quick-login-single{
  grid-template-columns:1fr !important;
}
.quick-changeinfo-link,
.quick-clearinfo-link{
  background:#fff7ed !important;
  border-color:#fed7aa !important;
  color:#9a3412 !important;
}
.quick-changeinfo-hint{
  margin-top:-2px;
  line-height:1.25;
}
@media (max-width:560px){
  .quick-login-mini-grid{grid-template-columns:1fr;}
  .quick-changeinfo-hint{font-size:11px;}
}

.quick-link-editor-raw{display:none!important;}
.quick-link-rows-editor{
  flex:1 1 auto;
  min-height:0;
  display:grid;
  grid-template-rows:repeat(8,minmax(44px,1fr));
  gap:6px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  touch-action:pan-y;
}
.quick-link-row{
  display:flex;
  align-items:center;
  min-height:44px;
  border:1px solid #cbd5e1;
  border-radius:13px;
  background:#f8fafc;
  overflow:hidden;
  box-sizing:border-box;
}
.quick-link-row:focus-within{
  border-color:#60a5fa;
  box-shadow:0 0 0 3px rgba(59,130,246,.14);
  background:#fff;
}
.quick-link-row-num{
  flex:0 0 34px;
  width:34px;
  height:100%;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  border-right:1px solid #e2e8f0;
  background:#f1f5f9;
  color:#64748b;
  font-size:13px;
  font-weight:900;
  user-select:none;
}
.quick-link-row:focus-within .quick-link-row-num{
  background:#eff6ff;
  color:#2563eb;
}
.quick-link-row-input{
  flex:1 1 auto;
  min-width:0;
  width:100%;
  height:100%;
  border:0;
  outline:none;
  background:transparent;
  color:#0f172a;
  font-size:16px;
  line-height:20px;
  padding:10px 11px;
  box-sizing:border-box;
  white-space:nowrap;
  overflow-x:auto;
  text-overflow:clip;
  -webkit-text-size-adjust:100%;
}
.quick-link-row-input::placeholder{color:#94a3b8;font-weight:700;}
@media(max-width:380px){
  .quick-link-rows-editor{gap:5px;grid-template-rows:repeat(8,minmax(40px,1fr));}
  .quick-link-row{min-height:40px;border-radius:11px;}
  .quick-link-row-num{flex-basis:30px;width:30px;font-size:12px;}
  .quick-link-row-input{padding:8px 9px;font-size:16px;}
}

.addacc-page .slim-card{margin-bottom:10px}
.addacc-head{align-items:flex-start;gap:10px}
.addacc-top-actions .btn{min-height:38px}
.addacc-form input{font-size:16px}
.addacc-action-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:8px}
.addacc-action-grid .btn{width:100%;min-height:44px}
.addacc-history-list{display:flex;flex-direction:column;gap:10px}
.addacc-history-item{border:1px solid var(--border);border-radius:14px;padding:10px;background:#fff}
.addacc-history-title{font-size:14px;line-height:1.25}
.addacc-history-msg{margin-top:3px;word-break:break-word}
.addacc-detail-box{margin-top:8px}
.addacc-detail-box summary{cursor:pointer;list-style:none;border:1px solid var(--border);border-radius:12px;padding:9px 10px;background:#f8fafc;font-weight:800;font-size:13px;color:#0f172a;text-align:center}
.addacc-detail-box summary::-webkit-details-marker{display:none}
.addacc-detail-box textarea{width:100%;min-height:150px;margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.35;white-space:pre;overflow:auto;resize:vertical}
.addacc-entry-row{margin-bottom:4px}
.addacc-entry-row .btn{min-height:38px}
.addacc-entry-row .addacc-api-fast-btn{
  background: linear-gradient(135deg,#f97316,#dc2626);
  color:#fff !important;
  border:0;
  font-weight:900;
  letter-spacing:.1px;
  box-shadow:0 10px 24px rgba(220,38,38,.18);
}
.addacc-entry-row .addacc-api-fast-btn:hover{filter:brightness(1.03)}
@media (max-width: 560px){
  .addacc-action-grid{grid-template-columns:1fr 1fr}
  .addacc-page .section-head h2{font-size:17px}
  .addacc-history-item{padding:9px}
}

.addacc-form input[data-form-type="other"]{autocomplete:off;}

.addacc-config-card,.addacc-run-card{position:relative;overflow:hidden}
.addacc-label{display:block;margin-top:9px;margin-bottom:4px;font-weight:800;color:#475569}
.addacc-form .full-btn{width:100%;min-height:46px}
.addacc-mini-message{margin-top:8px;min-height:20px}
.addacc-result-box{margin-top:10px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:14px;padding:10px 11px}
.addacc-result-title{font-size:15px;font-weight:900;color:#166534;line-height:1.25;margin-bottom:3px}
.addacc-history-new{animation:addaccFlash .9s ease-out 1}
@keyframes addaccFlash{0%{transform:translateY(-3px);box-shadow:0 0 0 3px rgba(34,197,94,.18)}100%{transform:translateY(0);box-shadow:none}}
.addacc-page button.is-loading{opacity:.78;cursor:wait;transform:none!important}
.addacc-page button.is-loading::after{content:' ';display:inline-block;width:12px;height:12px;margin-left:7px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:addaccSpin .75s linear infinite}
@keyframes addaccSpin{to{transform:rotate(360deg)}}
@media (max-width:520px){
  .addacc-page .card{border-radius:16px}
  .addacc-label{font-size:12px}
  .addacc-result-box{padding:9px 10px}
}

.config-inline-grid textarea.decoy-compact-input{
  min-width:0;
  width:100%;
  height:40px;
  min-height:40px;
  max-height:40px;
  resize:none;
  overflow:hidden;
  line-height:20px;
  padding:9px 10px;
  white-space:pre;
  box-sizing:border-box;
}
.config-inline-grid textarea.decoy-compact-input.mobile-editor-proxy{
  touch-action:pan-y;
}
.decoy-editor-raw{display:none!important;}
.decoy-rows-editor{
  flex:0 0 auto;
  grid-template-rows:repeat(3,minmax(48px,auto));
  gap:8px;
  overflow:visible;
}
.decoy-editor-tools{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:auto;
}
.decoy-row .quick-link-row-input{
  font-size:16px;
}
@media(max-width:520px){
  .config-inline-grid textarea.decoy-compact-input{
    font-size:16px;
    height:40px;
    min-height:40px;
    max-height:40px;
  }
}
@media(max-width:380px){
  .decoy-rows-editor{gap:6px;grid-template-rows:repeat(3,minmax(44px,auto));}
}

.myacc-main-card{
  margin-bottom:7px;
  padding-bottom:10px;
}
.myacc-main-card .button-row.top-gap{
  margin-top:7px;
}
.myacc-top-actions-card{
  padding-top:10px;
}
@media(max-width:600px){
  .myacc-main-card{margin-bottom:6px;}
  .myacc-top-actions-card{padding-top:9px;}
}
.config-inline-grid textarea.decoy-compact-input{
  height:40px;
  min-height:40px;
  max-height:82px;
  overflow:hidden;
  line-height:20px;
  padding-top:9px;
  padding-bottom:9px;
}
.config-inline-grid textarea.decoy-compact-input.decoy-lines-1{
  height:40px;
  min-height:40px;
  max-height:40px;
}
.config-inline-grid textarea.decoy-compact-input.decoy-lines-2{
  height:60px;
  min-height:60px;
  max-height:60px;
}
.config-inline-grid textarea.decoy-compact-input.decoy-lines-3{
  height:80px;
  min-height:80px;
  max-height:80px;
}
@media(max-width:520px){
  .config-inline-grid textarea.decoy-compact-input.decoy-lines-1{height:40px;min-height:40px;max-height:40px;}
  .config-inline-grid textarea.decoy-compact-input.decoy-lines-2{height:60px;min-height:60px;max-height:60px;}
  .config-inline-grid textarea.decoy-compact-input.decoy-lines-3{height:80px;min-height:80px;max-height:80px;}
}

.decoy-copy-list{
  display:flex;
  flex-direction:column;
  gap:6px;
  width:100%;
}
.decoy-copy-item{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:6px;
}
.decoy-copy-index{
  width:24px;
  height:28px;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#f1f5f9;
  color:#64748b;
  font-weight:900;
  font-size:12px;
  border:1px solid var(--border);
}
.decoy-copy-btn{
  min-width:0;
  height:34px;
  min-height:34px;
  padding:0 8px;
  line-height:1.05;
}
.decoy-copy-item.is-empty .decoy-copy-btn{
  color:#94a3b8;
}
.config-inline-grid textarea.decoy-compact-input,
.config-inline-grid textarea.decoy-compact-input.decoy-lines-1,
.config-inline-grid textarea.decoy-compact-input.decoy-lines-2,
.config-inline-grid textarea.decoy-compact-input.decoy-lines-3{
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
}
@media(max-width:520px){
  .decoy-copy-list{gap:5px;}
  .decoy-copy-item{grid-template-columns:22px minmax(0,1fr) minmax(0,1fr);gap:5px;}
  .decoy-copy-index{width:22px;height:26px;font-size:11px;border-radius:8px;}
  .decoy-copy-btn{height:32px;min-height:32px;padding:0 6px;font-size:13px;}
}

.windows-access-row{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;}
.quick-links-collapse.quick-links-compact{border-radius:12px;}
.quick-links-collapse.quick-links-compact summary,
.quick-links-collapse.quick-links-compact .quick-links-summary{min-height:34px;padding:6px 9px;font-size:13px;}
.quick-links-collapse.quick-links-compact .quick-links-input-row{padding:0 8px 8px;}
.quick-link-compact-box{--ql-font-size:13px;--ql-line-height:18px;--ql-pad-y:7px;--ql-pad-x:9px;border-radius:11px;cursor:pointer;}
.quick-link-compact-box textarea#customUrlsInput{height:32px!important;min-height:32px!important;max-height:32px!important;overflow:hidden!important;resize:none!important;cursor:pointer;}
.quick-link-compact-box .quick-link-line-nums{flex-basis:28px;width:28px;font-size:11px;}
.quick-link-editor-overlay{align-items:center;padding:14px;}
.quick-link-editor-panel{height:min(92vh,760px);max-width:720px;border-radius:20px;box-shadow:0 24px 80px rgba(15,23,42,.30);} 
@media(max-width:760px){
  .quick-link-editor-overlay{align-items:stretch;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);}
  .quick-link-editor-panel{height:100%;max-width:760px;border-radius:0;box-shadow:none;}
  .quick-link-compact-box{--ql-font-size:16px;--ql-line-height:20px;--ql-pad-y:7px;--ql-pad-x:9px;}
  .quick-link-compact-box textarea#customUrlsInput{height:34px!important;min-height:34px!important;max-height:34px!important;touch-action:pan-y;}
}

@media (min-width:641px){
  .quick-links-collapse.quick-links-compact{
    border-radius:12px;
  }
  .quick-links-collapse.quick-links-compact .quick-links-summary{
    min-height:34px;
    padding:6px 9px;
    font-size:13px;
  }
  .quick-links-collapse.quick-links-compact .quick-count-badge{
    height:22px;
    min-width:38px;
    font-size:11px;
    padding:0 7px;
  }
  .quick-links-collapse.quick-links-compact .quick-links-input-row{
    padding:0 9px 8px;
  }
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered{
    --ql-font-size:13px;
    --ql-line-height:18px;
    --ql-pad-y:7px;
    --ql-pad-x:10px;
    min-height:34px;
    max-height:34px;
    height:34px;
    cursor:pointer;
  }
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered .quick-link-line-nums{
    display:none;
  }
  .quick-links-collapse.quick-links-compact textarea#customUrlsInput,
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered textarea#customUrlsInput{
    min-height:34px!important;
    max-height:34px!important;
    height:34px!important;
    overflow:hidden!important;
    cursor:pointer;
    resize:none!important;
  }
  .quick-links-collapse.quick-links-compact textarea#customUrlsInput::placeholder{
    color:#94a3b8;
    font-weight:700;
  }
  .quick-link-editor-overlay{
    align-items:center;
    padding:24px;
  }
  .quick-link-editor-panel{
    width:min(760px,100%);
    height:auto;
    max-height:86vh;
    border-radius:20px;
    box-shadow:0 24px 80px rgba(15,23,42,.28);
  }
  .quick-link-rows-editor{
    flex:0 1 auto;
    min-height:360px;
    max-height:54vh;
  }
}
@media (max-width:640px){
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered .quick-link-line-nums{
    display:block;
  }
}

.quick-links-collapse.quick-links-compact .quick-links-input-row{
  padding:0 8px 8px;
}
.quick-links-collapse.quick-links-compact .quick-link-main-numbered{
  --ql-font-size:13px;
  --ql-line-height:18px;
  --ql-pad-y:7px;
  --ql-pad-x:10px;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  cursor:pointer;
  overflow:hidden!important;
  border-radius:11px;
}
.quick-links-collapse.quick-links-compact .quick-link-main-numbered .quick-link-line-nums{
  display:none!important;
}
.quick-links-collapse.quick-links-compact textarea#customUrlsInput,
.quick-links-collapse.quick-links-compact .quick-link-main-numbered textarea#customUrlsInput{
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  overflow:hidden!important;
  resize:none!important;
  cursor:pointer;
  white-space:nowrap!important;
  text-overflow:ellipsis;
}
.quick-links-collapse.quick-links-compact textarea#customUrlsInput::placeholder{
  color:#94a3b8;
  font-weight:700;
}
@media(max-width:640px){
  .quick-links-collapse.quick-links-compact .quick-links-summary{
    min-height:34px;
    padding:6px 9px;
    font-size:13px;
  }
  .quick-links-collapse.quick-links-compact .quick-count-badge{
    height:22px;
    min-width:38px;
    padding:0 7px;
    font-size:11px;
  }
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered{
    --ql-font-size:16px;
    --ql-line-height:20px;
    --ql-pad-y:7px;
    --ql-pad-x:10px;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
  }
  .quick-links-collapse.quick-links-compact textarea#customUrlsInput,
  .quick-links-collapse.quick-links-compact .quick-link-main-numbered textarea#customUrlsInput{
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    touch-action:pan-y;
  }
}
.admin-link-edit-box{display:grid;gap:7px;padding:9px;border:1px solid var(--line);border-radius:14px;background:#fbfcff;}
.admin-key-line{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:8px;}
.admin-key-edit-row{display:none;}
.admin-key-edit-row.show{display:block;}
.mini-btn{padding:6px 9px;font-size:12px;border-radius:10px;}
.switch-wrap{max-width:460px;}
.switch-card{padding:12px;margin-bottom:0;}
.switch-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;}
.switch-top h2{font-size:18px;}
.switch-compact-form{display:grid;gap:8px;}
.switch-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
.switch-main-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:7px;}
.switch-link-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
.switch-chip{display:block;min-width:0;}
.switch-chip input{position:absolute;opacity:0;pointer-events:none;}
.switch-chip span{display:flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px;font-weight:800;white-space:nowrap;}
.switch-link-chip span{min-height:32px;font-size:11.5px;border-radius:10px;padding:0 1px;}
.switch-chip input:checked+span{background:#111827;color:#fff;border-color:#111827;}
.switch-save-btn{min-height:40px;padding:10px 12px;}
.switch-preview-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:#fff;}
.switch-preview-line span{font-size:12px;font-weight:800;color:var(--muted);}
.switch-preview-line code{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.switch-api-details{margin-top:6px;font-size:12px;color:var(--muted);}
.switch-api-details summary{cursor:pointer;font-weight:800;}
@media(max-width:430px){.switch-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.switch-main-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:6px}.switch-link-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.switch-chip span{min-height:34px;font-size:11.5px;border-radius:11px}.switch-link-chip span{min-height:30px;font-size:10.5px;border-radius:9px;padding:0}.switch-card{padding:10px}.switch-preview-line{padding:7px 9px}.switch-top{margin-bottom:7px}}

/* V110: public Telegram contact and clearer /switch controls */
.root-contact-wrap{
  min-height:calc(100vh - 28px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.root-contact-card{
  width:100%;
  text-align:center;
  padding:30px 22px;
  border:1px solid #bae6fd;
  background:linear-gradient(180deg,#ffffff 0%,#f0f9ff 100%);
  box-shadow:0 22px 60px rgba(2,132,199,.12);
}
.root-contact-icon{
  width:66px;
  height:66px;
  margin:0 auto 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:22px;
  background:#e0f2fe;
  font-size:34px;
}
.root-contact-note{margin-top:8px;line-height:1.5;}
.root-telegram-btn{
  width:100%;
  margin-top:20px;
  background:#229ed9;
  color:#fff;
  box-shadow:0 12px 26px rgba(34,158,217,.25);
}
.root-contact-url{margin-top:12px;color:#0369a1;word-break:break-all;}

.switch-run-box{
  display:grid;
  gap:7px;
  margin-top:2px;
  padding:12px;
  border:1px solid #fdba74;
  border-radius:13px;
  background:linear-gradient(180deg,#fffaf3 0%,#fff7ed 100%);
}
.switch-field-title{
  display:block;
  color:#9a3412;
  font-size:13px;
  font-weight:900;
}
input.switch-run-input{
  width:100%;
  min-height:46px;
  padding:10px 13px;
  border:2px solid #fb923c;
  border-radius:11px;
  background:#fff;
  color:#7c2d12;
  font-size:19px;
  font-weight:900;
  text-align:center;
  box-shadow:0 3px 10px rgba(249,115,22,.08);
}
input.switch-run-input:focus{
  border-color:#ea580c;
  box-shadow:0 0 0 4px rgba(249,115,22,.14);
}
.switch-run-help{color:#9a3412;line-height:1.4;}
.switch-auto-box{
  display:flex;
  align-items:center;
  gap:11px;
  min-height:50px;
  padding:12px 14px;
  border:1px solid #6ee7b7;
  border-radius:13px;
  background:linear-gradient(180deg,#f0fdf4 0%,#ecfdf5 100%);
  color:#065f46;
  cursor:pointer;
  user-select:none;
}
.switch-auto-checkbox{
  width:22px;
  height:22px;
  margin:0;
  flex:0 0 auto;
  accent-color:#16a34a;
}
.switch-auto-text{
  font-size:15px;
  font-weight:900;
  line-height:1.25;
}
.btn.switch-save-btn{
  min-height:44px;
  padding:11px 14px;
  background:#2563eb;
  color:#fff;
  border:1px solid #1d4ed8;
  box-shadow:0 10px 22px rgba(37,99,235,.20);
}
.btn.switch-save-btn:active{transform:translateY(1px);box-shadow:0 5px 12px rgba(37,99,235,.18);}
