.scv-wrap{max-width:520px;margin:24px auto;font-family:inherit;box-sizing:border-box}
.scv-wrap *,.scv-modal *{box-sizing:border-box}
.scv-form{position:relative;z-index:2;background:#fff;border:1px solid #e5e7eb;border-radius:0;padding:20px;box-shadow:0 2px 12px rgba(0,0,0,.05);margin:0}
.scv-form h3{margin:0 0 14px;font-size:18px;line-height:1.3;color:#111;text-align:left}

/* Box layout: input and button stacked, full width, no radius */
.scv-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;width:100%;position:relative;z-index:2;isolation:isolate}
.scv-pill{background:transparent;border:0;border-radius:0;padding:0;overflow:visible}

.scv-wrap input.scv-input{
  flex:1 1 100%;min-width:0;width:100%;height:46px;
  margin:0 !important;padding:0 14px !important;
  border:1px solid #d1d5db !important;border-right:1px solid #d1d5db !important;
  border-radius:0 !important;
  background:#fff !important;box-shadow:none !important;outline:none !important;
  font-size:15px;line-height:46px;color:#111
}
.scv-wrap input.scv-input:focus{
  border-color:#2563eb !important;box-shadow:none !important;outline:none !important
}

/* Button: full-width below input, supports longer label, whole area clickable */
.scv-wrap button.scv-btn{
  flex:1 1 100%;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px;height:auto !important;margin:0 !important;
  padding:10px 18px !important;
  width:100%;
  background:#2563eb !important;
  background-image:none !important;
  color:#fff !important;
  border:1px solid #2563eb !important;
  border-radius:0 !important;
  cursor:pointer !important;
  font-weight:600;font-size:15px;line-height:1.2 !important;letter-spacing:.2px;
  white-space:normal;text-align:center;text-transform:none;text-decoration:none;
  box-shadow:none;appearance:none;-webkit-appearance:none;
  position:relative;z-index:5;pointer-events:auto !important;
  touch-action:manipulation;user-select:none;
  transition:background .15s
}
.scv-wrap button.scv-btn *{pointer-events:none}
.scv-wrap button.scv-btn:hover,.scv-wrap button.scv-btn:focus{background:#1d4ed8 !important;border-color:#1d4ed8 !important;color:#fff !important}
.scv-wrap button.scv-btn:disabled{opacity:.65;cursor:not-allowed !important}

@media (max-width:420px){
  .scv-row{flex-wrap:wrap;gap:10px}
  .scv-wrap input.scv-input,.scv-wrap button.scv-btn{width:100%;flex:1 1 100%}
  .scv-wrap input.scv-input{border-right:1px solid #d1d5db !important;border-radius:0 !important}
}

/* Modal: appended to <body>, always top-most and centered on the device screen */
body > .scv-modal,.scv-modal{
  display:none;position:fixed !important;inset:0;top:0;left:0;right:0;bottom:0;
  width:100%;height:100%;
  background:rgba(0,0,0,.55);
  z-index:2147483647 !important;
  padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch
}
.scv-modal.scv-open{display:flex !important;align-items:center !important;justify-content:center !important}
body.scv-noscroll{overflow:hidden}
.scv-modal-inner{background:#fff;border-radius:0;max-width:460px;width:100%;margin:auto;padding:28px 24px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:scvIn .2s ease;max-height:calc(100vh - 32px);overflow-y:auto}
@keyframes scvIn{from{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}
.scv-close{position:absolute;top:8px;right:12px;width:32px;height:32px;padding:0;background:none !important;border:0;border-radius:0;font-size:26px;line-height:1;cursor:pointer;color:#6b7280}
.scv-close:hover{color:#111;background:none !important}
.scv-result{text-align:center}
.scv-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:38px;line-height:1;color:#fff}
.scv-ok{background:#16a34a}
.scv-fail{background:#dc2626}
.scv-title{font-size:20px;font-weight:700;margin:0 0 6px;color:#111;line-height:1.3}
.scv-sub{color:#6b7280;margin:0 0 18px;font-size:14px;line-height:1.5}
.scv-details{text-align:left;background:#f9fafb;border-radius:0;padding:6px 16px;border:1px solid #e5e7eb}
.scv-detail{display:grid;grid-template-columns:38% 1fr;gap:12px;align-items:start;padding:9px 0;border-bottom:1px dashed #e5e7eb;font-size:14px}
.scv-detail:last-child{border-bottom:0}
.scv-k{color:#6b7280}
.scv-v{color:#111;font-weight:600;text-align:right;word-break:break-word}
