/* UI v2 – Card layout + mobile friendly */
.kotb {
  max-width: 640px;
  width: 100%;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,0.08);
  color: #111;
}
.kotb-label { display:block; margin-bottom: 8px; font-weight: 700; }
.kotb-row { display:flex; gap:10px; }
.kotb-input {
  width:100%;
  padding:12px 14px;
  border:1px solid rgba(0,0,0,0.16);
  border-radius:14px;
  font-size:16px;
  outline:none;
}
.kotb-input:focus{
  border-color: rgba(0,0,0,0.45);
  box-shadow: 0 0 0 3px rgba(0,0,0,0.06);
}
.kotb-actions {
  margin-top:12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.kotb-btn {
  padding:12px 16px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.16);
  background:#f7f7f7;
  font-weight:800;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.kotb-btn-primary {
  background:#111;
  color:#fff;
  border-color:#111;
}
.kotb-btn.is-active {
  box-shadow:0 0 0 3px rgba(0,0,0,0.08);
  border-color: rgba(0,0,0,0.35);
}
.kotb-subtext {
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  background:#fafafa;
  border:1px solid rgba(0,0,0,0.06);
  display:grid;
  gap:6px;
}
.kotb-sub { font-size:0.95em; opacity:0.95; line-height:1.35; }
.kotb-hint { margin-top:12px; font-size:0.95em; opacity:0.85; }
.kotb-msg { margin-top:10px; min-height:1.2em; font-weight:600; }

.kotb-instructions { margin-top:14px; }
.kotb-instructions-inner {
  border:1px solid rgba(0,0,0,0.10);
  border-radius:16px;
  padding:14px;
  background:#fcfcfc;
}
.kotb-i-title { font-weight:900; margin-bottom:10px; }
.kotb-i-list { margin:0 0 0 18px; line-height:1.45; }
.kotb-i-access { margin:8px 0 10px 18px; }
.kotb-i-note { margin-top:8px; opacity:0.88; font-size:0.95em; }
.kotb-i-mono {
  margin-top:10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  padding:12px 12px;
  background:#fff;
  border:1px solid rgba(0,0,0,0.10);
  border-radius:14px;
  overflow-x:auto;
}
.kotb-i-dial { font-weight:900; letter-spacing:0.5px; }
.kotb-i-foot { margin-top:12px; font-size:0.95em; opacity:0.9; }

@media (max-width:520px){
  .kotb-actions{flex-direction:column;}
  .kotb-btn{width:100%; justify-content:center;}
}
