:root { --border:#d9d9d9; }

/* ===== Base ===== */
html, body{
  background:#fff;
  margin:0;
  font-family: apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, "Helvetica Neue", Arial, sans-serif;
}


[hidden]{ display:none !important; }

/* ===== Header ===== */
.cf-header{
  position: relative;
  z-index: 1100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 16px;
  border-bottom:1px solid var(--border);
  background:#fff;
}

.cf-left .cf-home{
  display:flex; align-items:center; gap:12px;
  text-decoration:none; color:inherit;
}
.cf-logo-wrap{display:flex; align-items:center; gap:10px;}
.cf-logo svg,.cf-badge svg{display:block;}
.cf-brand{font-size:14px;}


.cf-badge{display:none;}
@media (max-width:640px){
  .cf-logo{display:none;}
  .cf-badge{display:block;}
}


.cf-right{display:flex; align-items:center; gap:12px;}
.cf-dd{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 10px; background:#fff;
  border:1px solid transparent; border-radius:6px;
  cursor:pointer; font:inherit;
}
.cf-dd svg{width:16px; height:16px; fill:currentColor;}
.cf-dd:focus-visible{outline:2px solid #bbb; outline-offset:2px;}


.cf-dd-wrap{position:relative;}
.cf-menu{
  position:absolute; top:calc(100% + 8px); left:0;
  min-width:240px; background:#fff; padding:8px 0;
  border:1px solid #e7e7e7; border-radius:10px;
  box-shadow:0 8px 30px rgba(0,0,0,.08); z-index:1200;
}
.cf-menu-item{
  display:block; padding:12px 16px; text-decoration:none;
  color:#111; white-space:nowrap; line-height:1.3;
}
.cf-menu-item:hover{background:#f5f5f5;}
@media (max-width:640px){
  .cf-menu{ position:fixed; left:8px; right:8px; top:56px; min-width:auto; }
}

/* ===== Verify section (step 1) ===== */
.cf-verify{
  min-height:85dvh;
  display:grid; place-items:center;
  padding-block:clamp(80px,18vh,180px);
  padding-inline:16px; box-sizing:border-box;
}

.verify-card{
  width:min(410px,100%);
  background:#fff; border:1px solid #d9d9d9;
  border-radius:10px; padding:12px;
  box-shadow:0 8px 30px rgba(0,0,0,.04);
}

.verify-row{
  display:grid; grid-template-columns:28px 1fr auto;
  align-items:center; gap:12px; padding:8px 10px;
  border-radius:8px; user-select:none; cursor:pointer;
}
.verify-row:focus-within{ outline:2px solid #e7e7e7; outline-offset:2px; }
.verify-row input{ position:absolute; opacity:0; pointer-events:none; }


.checkbox{
  --cb:22px;
  width:var(--cb); height:var(--cb);
  border:2px solid #c8c8c8; border-radius:3px;
  display:grid; place-items:center; background:#fff; overflow:hidden;
}
.loader{
  --r:calc(var(--cb)*0.36);          /* Ñ€Ð°Ð´Ð¸ÑƒÑ Ð¾ÐºÑ€ÑƒÐ¶Ð½Ð¾ÑÑ‚Ð¸ */
  --dot:calc(var(--cb)*0.14);        /* Ð´Ð¸Ð°Ð¼ÐµÑ‚Ñ€ Ñ‚Ð¾Ñ‡ÐºÐ¸ */
  width:var(--dot); height:var(--dot); border-radius:50%;
  color:#d0b77f;
  box-shadow:
          calc( 1.000*var(--r)) 0                      0 0 currentColor,
          calc( 0.707*var(--r)) calc( 0.707*var(--r))  0 0 currentColor,
          0                     calc( 1.000*var(--r))  0 0 currentColor,
          calc(-0.707*var(--r)) calc( 0.707*var(--r))  0 0 currentColor,
          calc(-1.000*var(--r)) 0                      0 0 currentColor,
          calc(-0.707*var(--r)) calc(-0.707*var(--r))  0 0 currentColor,
          0                     calc(-1.000*var(--r))  0 0 currentColor,
          calc( 0.707*var(--r)) calc(-0.707*var(--r))  0 0 currentColor;
}
.loading .checkbox{ border-color:transparent; }
.loading .loader{ display:block !important; animation:l27 1s steps(8) 1 both; }
@keyframes l27{ 100%{ transform:rotate(1turn) } }

.verify-text{ font-size:16px; color:#111; }

.verify-brand{
  display:grid; grid-auto-flow:row; justify-items:end;
  gap:2px; color:#6b6b6b; font-size:12px; text-align:right;
}
.brand-wordmark{ width:70px; height:28px; display:block; }
.brand-legal{ opacity:.9; font-size:11px; line-height:1.1; }

/* ===== Step 2: fullscreen layer over content (but under header/footer) ===== */
body.modal-open{ overflow:hidden; }

.verify-next{
  position:fixed; left:0; right:0;
  top:var(--header-gap,0px);
  bottom:var(--footer-gap,0px);
  display:grid; place-items:center;
  padding:24px; background:#fff;
  z-index:1000;
}

.cf-modal{
  width:min(690px,96vw);
  border:1px solid #e6e6e6; border-radius:14px;
  background:#fff; overflow:hidden; color:#111;
  box-shadow:0 24px 80px rgba(0,0,0,.14);
}

/* Ð¨Ð°Ð¿ÐºÐ° Ð¼Ð¾Ð´Ð°Ð»ÐºÐ¸ */
.modal-head{
  display:flex; justify-content:space-between; align-items:flex-start;
  gap:18px; padding:18px 20px; background:#eb7f1d; color:#fff;
}
.mh-title{ font-weight:700; font-size:20px; line-height:1.2; }
.mh-sub{ font-size:14px; opacity:.95; margin-top:4px; }
.mh-logo svg{ display:block; width:96px; height:54px; }

/* ÐžÑ€Ð°Ð½Ð¶ÐµÐ²Ð°Ñ Ð¿Ð¾Ð»Ð¾ÑÐ° Ð¿Ð¾ÑÐ»Ðµ ÑˆÐ°Ð¿ÐºÐ¸ */
.head-rule{
  height:3px; background:#eb7f1d;
  margin:0 20px; border-radius:2px;
}

.modal-body{ padding:20px; }
.step + .step{ margin-top:18px; }

.step-title{
  display:flex; align-items:center; gap:10px; margin-bottom:8px;
}
/* Ð¿Ñ€ÑÐ¼Ð¾ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð¸Ðº Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð²Ð¾ÐºÑ€ÑƒÐ³ Step X/2 (Ð½Ðµ Ð¶Ð¸Ñ€Ð½Ñ‹Ð¹) */
.step-chip{
  padding:6px 10px; background:#f4e9f1;
  border-radius:8px; font-weight:400; line-height:1.2;
}
/* Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ðº ÑˆÐ°Ð³Ð° ÑÐ¿Ñ€Ð°Ð²Ð° â€” Ð¶Ð¸Ñ€Ð½Ñ‹Ð¹ */
.step-heading{ font-weight:700; }

.step-text{ margin:0; line-height:1.7; font-size:15px; }
.mono{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.sep{ display:inline-block; padding:0 8px; opacity:.7; }
.br-sm{ display:none; }
@media (max-width:420px){ .br-sm{ display:inline; } }

.kbd{
  display:inline-flex;
  align-items:center;          /* Ð²ÐµÑ€Ñ‚Ð¸ÐºÐ°Ð»ÑŒÐ½Ð¾ Ñ†ÐµÐ½Ñ‚Ñ€Ð¸Ñ€ÑƒÐµÐ¼ Ð¸ Ñ‚ÐµÐºÑÑ‚, Ð¸ Ð¸ÐºÐ¾Ð½ÐºÑƒ */
  gap:8px;
  padding:3px 10px;
  border:1px solid #d1d1d1;
  border-radius:8px;
  background:#f7f7f7;
  font-size:14px;
  line-height:1;               /* Ð±ÐµÐ· Ð»Ð¸ÑˆÐ½Ð¸Ñ… Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½Ð¸Ñ… Ð¾Ñ‚ÑÑ‚ÑƒÐ¿Ð¾Ð² Ð¿Ð¾ Ð²Ñ‹ÑÐ¾Ñ‚Ðµ */
  vertical-align:middle;       /* Ñ‡Ñ‚Ð¾Ð±Ñ‹ Ð²ÑÑ ÐºÐ°Ð¿ÑÑƒÐ»Ð° Ð±Ñ‹Ð»Ð° Ð¿Ð¾ Ñ†ÐµÐ½Ñ‚Ñ€Ñƒ ÑÑ‚Ñ€Ð¾ÐºÐ¸ */
  white-space:nowrap;
}

/* Ð¢ÐµÐºÑÑ‚ Ð²Ð½ÑƒÑ‚Ñ€Ð¸ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ¸ (Ð½Ð°Ð¿Ñ€Ð¸Ð¼ÐµÑ€, Â«CommandÂ», Â«ReturnÂ») */
.kbd > span{
  line-height:1;               /* ÑƒÐ±Ð¸Ñ€Ð°ÐµÐ¼ Ð²Ð»Ð¸ÑÐ½Ð¸Ðµ Ð¼ÐµÑ‚Ñ€Ð¸Ðº ÑˆÑ€Ð¸Ñ„Ñ‚Ð° Ð½Ð° Ð²Ñ‹ÑÐ¾Ñ‚Ñƒ */
  display:inline-block;
}

/* Ð£Ð½Ð¸Ð²ÐµÑ€ÑÐ°Ð»ÑŒÐ½Ñ‹Ð¹ Ñ€Ð°Ð·Ð¼ÐµÑ€ Ð¸ÐºÐ¾Ð½ÐºÐ¸ (Ñ‚ÐµÐ¿ÐµÑ€ÑŒ ÑÑ‚Ð¾ <img>) */
.kbd-ico{
  width:18px;
  height:18px;
  display:block;               /* Ñ‡Ñ‚Ð¾Ð±Ñ‹ Ð½Ðµ Ð±Ñ‹Ð»Ð¾ Ð±Ð°Ð·Ð¾Ð²Ð¾Ð¹ Ð»Ð¸Ð½Ð¸Ð¸ Ñƒ ÐºÐ°Ñ€Ñ‚Ð¸Ð½ÐºÐ¸ */
  flex:0 0 18px;               /* Ñ„Ð¸ÐºÑÐ¸Ñ€ÑƒÐµÐ¼ Ñ€Ð°Ð·Ð¼ÐµÑ€ Ð²Ð½ÑƒÑ‚Ñ€Ð¸ flex-ÐºÐ¾Ð½Ñ‚ÐµÐ¹Ð½ÐµÑ€Ð° */
  object-fit:contain;
}

/* Ð¢Ð¾Ð½ÐºÐ°Ñ Ð¿Ð¾Ð´ÑÑ‚Ñ€Ð¾Ð¹ÐºÐ° ÐºÐ¾Ð½ÐºÑ€ÐµÑ‚Ð½Ñ‹Ñ… Ð¸ÐºÐ¾Ð½Ð¾Ðº Ð¿Ñ€Ð¸ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ÑÑ‚Ð¸ */
.kbd-cmd .kbd-ico,
.kbd-ret .kbd-ico{
  width:18px;
  height:18px;
}

/* Ð˜ÐºÐ¾Ð½ÐºÐ° Â«SpaceÂ»: Ñ‡ÑƒÑ‚ÑŒ ÑˆÐ¸Ñ€Ðµ Ð¸ Ð½Ð¸Ð¶Ðµ, Ñ‡Ñ‚Ð¾Ð±Ñ‹ Ð²Ð¸Ð·ÑƒÐ°Ð»ÑŒÐ½Ð¾ Ð±Ñ‹Ð»Ð° Ð¿Ð¾ Ñ†ÐµÐ½Ñ‚Ñ€Ñƒ */
.kbd-space .kbd-ico{
  width:22px;                  /* Ð¼Ð¾Ð¶Ð½Ð¾ 20â€“24px, Ð¿Ð¾Ð´ ÑÐ²Ð¾Ð¹ SVG */
  height:12px;                 /* Ñ‡ÑƒÑ‚ÑŒ Ð½Ð¸Ð¶Ðµ, Ñ‡ÐµÐ¼ 18px, Ñ‡Ñ‚Ð¾Ð±Ñ‹ ÐºÐ°Ð·Ð°Ð»Ð°ÑÑŒ Ð¿Ð¾Ð»Ð¾ÑÐºÐ¾Ð¹ */
}

/* Ð Ð°Ð·Ð´ÐµÐ»Ð¸Ñ‚ÐµÐ»ÑŒ Â«+Â» Ð¼ÐµÐ¶Ð´Ñƒ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ â€” Ð¿Ð¾ Ñ†ÐµÐ½Ñ‚Ñ€Ñƒ ÑÑ‚Ñ€Ð¾ÐºÐ¸ */
.sep{
  display:inline-block;
  padding:0 8px;
  line-height:1;
  vertical-align:middle;
  opacity:.7;
}

/* state */
.state{ margin-top:16px; text-align:center; }
.state-line{
  display:inline-block; padding:10px 12px; margin:0 0 8px;
  background:#f4e9f1; border-radius:8px;
}
.state-sub{
  margin:0; color:#555; font-size:14px;
  display:flex; align-items:center; justify-content:center; gap:10px;
}
.check-placeholder{ width:18px; height:18px; border-radius:50%; outline:1px dashed #d0b77f; }


.modal-foot{
  display:flex; justify-content:space-between; align-items:flex-end;
  gap:16px; padding:12px 20px 16px;
  border-top:1px solid #f0f0f0; background:#fff;
  font-size:13px; color:#555;
}

.state-bar{
  margin-top:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.state-left{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}


.time-row{
  font-weight:700;
  color:#333;
  line-height:1.2;
}
.time-label{ margin-right:6px; }
#timeValue{ font-variant-numeric: tabular-nums; }


.users-row{
  display:flex;
  align-items:center;
  gap:8px;
  color:#555;
  font-weight:400;
  line-height:1.3;
  flex-wrap:wrap;
}
.users-row .muted{ opacity:.75; margin-left:4px; }
.state-check{
  width:16px; height:16px;
  flex:0 0 16px;
}


.verify-btn{
  background:#d68c4e;
  color:#fff;
  border:0;
  border-radius:8px;
  padding:14px 24px;
  font-weight:700;
  font-size:18px;
  line-height:1;
  letter-spacing:.3px;
  min-width:150px;
  user-select:none;
  white-space:nowrap;
  cursor:default;
}

.verify-btn:active{ transform:none; }

.foot-label{ text-transform:lowercase; margin-bottom:4px; }
.foot-ip{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  color:#111;
}
.foot-right{
  margin-left:auto;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Courier New", monospace;
  color:#666;
}

/* ===== Footer ===== */
.cf-footer{
  position: relative;
  z-index: 1100;              /* Ð²Ñ‹ÑˆÐµ Ð¾Ð²ÐµÑ€Ð»ÐµÑ ÑˆÐ°Ð³Ð° 2 */
  border-top:1px solid var(--border);
  background:#fff;
}
.cf-footer-inner{ max-width:1200px; margin:0 auto; padding:12px 16px; }
.cf-footer-links{
  list-style:none; display:flex; flex-wrap:wrap;
  align-items:center; justify-content:center;
  gap:0; padding:0; margin:0;
}
.cf-footer-links li{
  display:flex; align-items:center;
  color:#1a1a1a; line-height:1.5; font-size:14px;
  padding:6px 10px;
}
.cf-footer-links li+li{ border-left:1px solid #dcdcdc; }
.cf-footer a{
  text-decoration:none; color:inherit; opacity:.95;
  transition:color .15s ease, opacity .15s ease;
}
.cf-footer a:hover{ opacity:1; }

.privacy-btn {
  background: transparent;
  border: none;
  color: #0051c3;
  text-decoration: none;
  text-underline-offset: 4px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  font: inherit;
}


.privacy-btn img.c_bd.c_if {
  display: inline-block;
  vertical-align: middle;
  height: 15px;
  width: auto;
}
.privacy-ico{
  width:18px; height:14px; display:inline-block; border-radius:999px;
  outline:1px solid #0051c3; position:relative;
}
.privacy-ico::before,.privacy-ico::after{
  content:""; position:absolute; inset:auto 2px 2px auto;
  width:6px; height:6px; border-radius:50%; background:#0051c3;
}
.cf-footer-links .copy{ color:#5a5a5a; }
@media (max-width:720px){
  .cf-footer-links{ justify-content:flex-start; }
  .cf-footer-links .copy{ border-left:none; }
}