
/* ============================================================
   LIVE SCORE CHECKER  —  added 27 Aug 2026
   ============================================================ */
.aivis-live{max-width:620px;margin:32px auto 0;text-align:left}
.aivis-form{background:var(--bg-accent);border:1px solid var(--border);
  border-radius:14px;padding:22px 22px 18px}
.aivis-label{display:block;font-family:var(--font-body);font-size:var(--text-sm);
  font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  color:var(--text-muted);margin-bottom:10px}
.aivis-row{display:flex;gap:10px;flex-wrap:wrap}
.aivis-input{flex:1 1 260px;min-width:0;padding:14px 16px;font-family:var(--font-body);
  font-size:var(--text-base);color:var(--text);background:#fff;
  border:1px solid var(--border);border-radius:9px;outline:none;transition:border-color .15s}
.aivis-input:focus{border-color:var(--accent)}
.aivis-btn{flex:0 0 auto;padding:14px 26px;font-family:var(--font-body);
  font-size:var(--text-base);font-weight:600;color:#fff;cursor:pointer;
  background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);
  border:0;border-radius:9px;transition:transform .12s,opacity .12s}
.aivis-btn:hover{transform:translateY(-1px)}
.aivis-btn[disabled]{opacity:.55;cursor:default;transform:none}
.aivis-hint{margin:12px 0 0;font-family:var(--font-body);font-size:var(--text-sm);
  color:var(--text-faint)}

.aivis-loading{text-align:center;padding:34px 0}
.aivis-spinner{width:34px;height:34px;margin:0 auto 14px;border-radius:50%;
  border:3px solid var(--accent-soft);border-top-color:var(--accent);
  animation:aivis-spin .8s linear infinite}
@keyframes aivis-spin{to{transform:rotate(360deg)}}
.aivis-loading-text{margin:0;font-family:var(--font-body);font-size:var(--text-base);
  color:var(--text-muted)}

.aivis-error{background:#FBEDE9;border:1px solid var(--accent-soft);border-radius:11px;
  padding:16px 18px;font-family:var(--font-body);font-size:var(--text-base);color:var(--text)}

.aivis-result{background:var(--bg-accent);border:1px solid var(--border);
  border-radius:14px;padding:26px 24px}
.aivis-scorewrap{text-align:center;margin-bottom:6px}
.aivis-score{font-family:var(--font-display);font-size:74px;line-height:1;color:var(--accent)}
.aivis-score.is-mid{color:var(--gold-trim)}
.aivis-score.is-good{color:#3F7A4B}
.aivis-scoreof{font-family:var(--font-body);font-size:var(--text-sm);
  letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-top:4px}
.aivis-verdict{margin:14px 0 20px;text-align:center;font-family:var(--font-body);
  font-size:var(--text-md);color:var(--text)}
.aivis-factors{list-style:none;margin:0 0 22px;padding:0;
  border-top:1px solid var(--border-soft)}
.aivis-factors li{display:flex;gap:12px;align-items:flex-start;padding:14px 2px;
  border-bottom:1px solid var(--border-soft)}
.aivis-mark{flex:0 0 22px;height:22px;border-radius:50%;display:grid;place-items:center;
  font-size:13px;font-weight:700;color:#fff;margin-top:1px}
.aivis-mark.pass{background:#3F7A4B}
.aivis-mark.warn{background:var(--gold-trim)}
.aivis-mark.fail{background:var(--accent)}
.aivis-fname{font-family:var(--font-body);font-size:var(--text-base);font-weight:600;
  color:var(--text);margin:0 0 3px}
.aivis-fdetail{font-family:var(--font-body);font-size:var(--text-sm);
  color:var(--text-muted);margin:0;line-height:1.5}
.aivis-unlock{border-top:1px solid var(--border);padding-top:20px;margin-top:4px}
.aivis-unlock-lead{margin:0 0 14px;text-align:center;font-family:var(--font-body);
  font-size:var(--text-md);font-weight:600;color:var(--text)}
.aivis-again{display:block;margin:18px auto 0;background:none;border:0;cursor:pointer;
  font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-faint);
  text-decoration:underline;text-underline-offset:3px}
.aivis-again:hover{color:var(--accent)}

@media (max-width:520px){
  .aivis-btn{flex:1 1 100%}
  .aivis-score{font-size:60px}
}
