/* STS Fresh - modern */
.sts-wrap { font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; }
.sts-card { background:#fff; border:1px solid #e8e8ef; border-radius:16px; padding:18px; box-shadow: 0 8px 24px rgba(0,0,0,.06); }
.sts-box { background:#fff; border:1px solid #e8e8ef; border-radius:16px; padding:18px; }
.sts-head h2{ margin:0 0 6px; font-size:22px; }
.sts-head p{ margin:0; color:#555; }

.sts-form { margin-top:14px; }
.sts-row { display:grid; grid-template-columns: 1fr 1fr; gap:12px; margin-bottom:12px; }
.sts-field label{ display:block; font-weight:600; margin-bottom:6px; }
.sts-field input{ width:100%; border:1px solid #d9d9e3; border-radius:12px; padding:10px 12px; outline:none; }
.sts-field input:focus{ border-color:#6d5efc; box-shadow:0 0 0 3px rgba(109,94,252,.15); }

.sts-captcha{display:flex; align-items:center; gap:10px}
.sts-captcha-q{font-weight:900; padding:10px 12px; border:1px solid #e8e8ef; border-radius:12px; background:#fafafe}

.sts-consent{ margin:10px 0 6px; }
.sts-consent label{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; color:#333; }
.sts-kvkk-link{ font-weight:800; text-decoration:none; color:#6d5efc; }
.sts-actions{ margin-top:12px; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.sts-start-note{ color:#666; font-size:12px; }

.sts-btn{ border:1px solid transparent; border-radius:12px; padding:10px 14px; cursor:pointer; font-weight:900; }
.sts-btn-primary{ background:#6d5efc; color:#fff; }
.sts-btn-primary:hover{ filter:brightness(.95); }
.sts-btn-ghost{ background:#fff; border-color:#e8e8ef; color:#333; }
.sts-btn-ghost:hover{ background:#fafafe; }

.sts-exam{ display:grid; grid-template-columns: 1fr 380px; gap:14px; align-items:start; }
.sts-pdf{ background:#fff; border:1px solid #e8e8ef; border-radius:16px; overflow:hidden; min-height:70vh; }
.sts-pdf-frame{ width:100%; height:80vh; border:0; display:block; }

.sts-panel{ position:sticky; top:14px; background:#fff; border:1px solid #e8e8ef; border-radius:16px; box-shadow: 0 8px 24px rgba(0,0,0,.06); overflow:hidden; }
.sts-panel-head{ padding:14px 14px 10px; border-bottom:1px solid #eee; }
.sts-panel-title{ font-size:16px; font-weight:950; letter-spacing:.2px; }
.sts-panel-sub{ color:#666; font-size:12px; margin-top:6px; display:flex; align-items:center; gap:10px; }

.sts-timer{
  margin-left:auto;
  font-weight:950;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #e8e8ef;
  background:#111827;
  color:#fff;
  letter-spacing:.6px;
  font-size:13px;
  box-shadow: 0 6px 18px rgba(17,24,39,.18);
}
.sts-timer-urgent{
  background:#b91c1c;
  border-color:#b91c1c;
  box-shadow: 0 8px 22px rgba(185,28,28,.25);
}

.sts-answers{ padding:12px; max-height:62vh; overflow:auto; }
.sts-optic{ border:1px solid #f1f1f7; border-radius:14px; overflow:hidden; }
.sts-optic-head{
  display:grid;
  grid-template-columns: 56px repeat(var(--sts-cols), 1fr);
  background:#f6f6ff;
  border-bottom:1px solid #eee;
  padding:8px 10px;
  font-weight:950;
  font-size:12px;
}
.sts-optic-letter{ text-align:center; }
.sts-optic-row{
  display:grid;
  grid-template-columns: 56px repeat(var(--sts-cols), 1fr);
  padding:8px 10px;
  border-bottom:1px solid #f3f3fb;
  align-items:center;
}
.sts-optic-row:last-child{ border-bottom:0; }
.sts-optic-qnum{ font-weight:950; font-size:12px; color:#222; }

.sts-bubble{ display:flex; justify-content:center; align-items:center; cursor:pointer; }
.sts-bubble input{ position:absolute; opacity:0; pointer-events:none; }
.sts-bubble span{
  width:16px; height:16px; border-radius:999px;
  border:2px solid #cfcfe6; display:inline-block;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.8);
}
.sts-bubble input:checked + span{
  border-color:#6d5efc;
  box-shadow: inset 0 0 0 5px #6d5efc;
}

.sts-panel-actions{ padding:12px 14px 14px; border-top:1px solid #eee; display:flex; gap:10px; flex-wrap:wrap; }
.sts-panel-hint{ width:100%; margin-top:6px; color:#666; font-size:12px; }

.sts-complete{ text-align:center; padding:10px 6px; }
.sts-complete-icon{
  width:54px;height:54px;border-radius:999px;
  margin:4px auto 12px;
  display:flex;align-items:center;justify-content:center;
  background:#ecfdf5;border:1px solid #bbf7d0;color:#047857;
  font-weight:950;font-size:24px;
}
.sts-complete h2{ margin:0 0 8px; font-size:22px; }
.sts-complete p{ margin:0; color:#555; font-size:14px; line-height:1.6; }

@media (max-width: 980px){
  .sts-exam{ grid-template-columns: 1fr; }
  .sts-panel{ position:relative; top:auto; }
  .sts-row{ grid-template-columns:1fr; }
}
