/* Clean, simple UI */
.mtcsc-wrap{max-width:720px;margin:24px auto;padding:0 14px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;}
.mtcsc-card{background:#fff;border:1px solid #e7ebf3;border-radius:14px;box-shadow:0 8px 24px rgba(18,38,63,.06);padding:18px;}
.mtcsc-head{margin-bottom:12px;}
.mtcsc-title{font-size:18px;font-weight:800;color:#0f172a;}
.mtcsc-sub{font-size:12px;color:#64748b;margin-top:4px;}
.mtcsc-progress{font-size:12px;color:#475569;margin:10px 0;}
.mtcsc-q{font-size:22px;font-weight:800;line-height:1.5;margin:10px 0 18px;}
.mtcsc-choices{display:flex;flex-direction:column;gap:10px;}
.mtcsc-choice{display:flex;align-items:center;gap:10px;padding:12px 12px;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;background:#fbfdff;}
.mtcsc-choice:hover{border-color:#c7d2fe}
.mtcsc-choice input{position:absolute;opacity:0;pointer-events:none;}
.mtcsc-radio{width:18px;height:18px;border-radius:999px;border:2px solid #cbd5e1;display:inline-block;flex:0 0 auto;}
.mtcsc-choice input:checked + .mtcsc-radio{border-color:#2563eb;box-shadow:inset 0 0 0 4px #2563eb;}
.mtcsc-choice-text{font-size:14px;color:#0f172a;font-weight:600;}
.mtcsc-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:12px 16px;background:#2563eb;color:#fff;font-weight:800;cursor:pointer;}
.mtcsc-btn-ghost{background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0;}
.mtcsc-alert{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:10px 12px;border-radius:12px;margin:10px 0;font-size:13px;font-weight:650;}
.mtcsc-done{padding:12px;border-radius:12px;background:#ecfeff;border:1px solid #a5f3fc;color:#155e75;font-weight:700;}
.mtcsc-locked{opacity:.85}

.mtcsc-field{margin:12px 0;}
.mtcsc-label{display:block;font-weight:700;margin:0 0 6px 0;color:#1f2a37;}
.mtcsc-input,.mtcsc-select{width:100%;box-sizing:border-box;border:1px solid rgba(15,23,42,.15);border-radius:12px;padding:10px 12px;background:#fff;font-size:15px;}
.mtcsc-input:focus,.mtcsc-select:focus{outline:none;border-color:rgba(59,130,246,.6);box-shadow:0 0 0 3px rgba(59,130,246,.15);}


/* Progress badge (top-right) */
.mtcsc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.mtcsc-progress-badge{font-size:22px;font-weight:900;line-height:1;color:#0f172a;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;min-width:110px;text-align:center;}
.mtcsc-top-actions{margin:10px 0 0;display:flex;justify-content:flex-start;}
.mtcsc-btn-ghost{background:#fff;border:1px solid #cbd5e1;color:#0f172a;}
.mtcsc-btn-ghost:hover{background:#f8fafc;}
.mtcsc-finish{margin-top:14px;}

/* Choice hover highlight (more visible, still clean) */
.mtcsc-choices{display:flex;flex-direction:column;gap:12px;}
.mtcsc-choice{
  cursor:pointer;
  border:1px solid #dbeafe;
  border-radius:16px;
  padding:14px 14px;
  background:#ffffff;
  transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}
.mtcsc-choice:hover,
.mtcsc-choice:focus-within{
  background:linear-gradient(180deg, #dbeafe 0%, #eff6ff 100%);
  border-color:#60a5fa;
  box-shadow: 0 10px 26px rgba(37,99,235,0.22);
  transform: translateY(-1px);
}
.mtcsc-choice-text{font-size:16px;font-weight:700;}
.mtcsc-choice input[type="radio"]{transform:scale(1.25); margin-right:10px;}
.mtcsc-choice:has(input[type="radio"]:checked){
  background:linear-gradient(180deg, #cffafe 0%, #ecfeff 100%);
  border-color:#06b6d4;
  box-shadow: 0 10px 26px rgba(8,145,178,0.24);
}

/* Choice color accents (calm passion palette) */
.mtcsc-choice{transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .08s ease;}
.mtcsc-choice:hover{box-shadow:0 10px 22px rgba(15,23,42,.08);transform:translateY(-1px);}

.mtcsc-choice[data-idx="1"]:hover{background:rgba(244,63,94,.10);border-color:rgba(244,63,94,.35);}
.mtcsc-choice[data-idx="2"]:hover{background:rgba(249,115,22,.10);border-color:rgba(249,115,22,.35);}
.mtcsc-choice[data-idx="3"]:hover{background:rgba(20,184,166,.10);border-color:rgba(20,184,166,.35);}
.mtcsc-choice[data-idx="4"]:hover{background:rgba(139,92,246,.10);border-color:rgba(139,92,246,.35);}

.mtcsc-choice[data-idx="1"] input:checked + .mtcsc-radio{border-color:#f43f5e;box-shadow:inset 0 0 0 4px #f43f5e;}
.mtcsc-choice[data-idx="2"] input:checked + .mtcsc-radio{border-color:#f97316;box-shadow:inset 0 0 0 4px #f97316;}
.mtcsc-choice[data-idx="3"] input:checked + .mtcsc-radio{border-color:#14b8a6;box-shadow:inset 0 0 0 4px #14b8a6;}
.mtcsc-choice[data-idx="4"] input:checked + .mtcsc-radio{border-color:#8b5cf6;box-shadow:inset 0 0 0 4px #8b5cf6;}

.mtcsc-choice[data-idx="1"] input:checked ~ .mtcsc-choice-text{color:#be123c;}
.mtcsc-choice[data-idx="2"] input:checked ~ .mtcsc-choice-text{color:#c2410c;}
.mtcsc-choice[data-idx="3"] input:checked ~ .mtcsc-choice-text{color:#0f766e;}
.mtcsc-choice[data-idx="4"] input:checked ~ .mtcsc-choice-text{color:#6d28d9;}

.mtcsc-finish-hint{margin-top:8px;color:#64748b;font-size:14px;font-weight:600;}
.mtcsc-finish-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;}

/* Top actions spacing */
.mtcsc-top-actions{margin:18px 0 22px;display:flex;justify-content:flex-start;gap:12px;}
.mtcsc-top-actions-right{justify-content:flex-end;margin-top:-46px;margin-bottom:12px;}
/* Review page */
.mtcsc-review-title{font-size:22px;font-weight:800;margin:6px 0 6px;}
.mtcsc-review-sub{color:#64748b;font-weight:600;margin-bottom:14px;}
.mtcsc-review-actions{margin-bottom:12px;}
.mtcsc-review-list{border-top:1px solid #e5e7eb;margin-top:10px;}
.mtcsc-review-item{display:grid;grid-template-columns:1fr 220px 110px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #f1f5f9;}
.mtcsc-review-qno{display:inline-block;min-width:64px;font-weight:800;color:#0f172a;}
.mtcsc-review-alabel{font-weight:800;}
@media (max-width: 900px){
  .mtcsc-review-item{grid-template-columns:1fr;}
  .mtcsc-top-actions-right{margin-top:0;}
}

.mtcsc-qtext{font-size:20px;font-weight:800;line-height:1.45;margin:10px 0 14px;}
.mtcsc-qno{display:inline-block;margin-right:8px;color:#0f172a;}

.mtcsc-nav{margin:6px 0 14px;}

.mtcsc-start .mtcsc-field{margin:14px 0;}
.mtcsc-start .mtcsc-label{display:block;font-weight:800;margin-bottom:6px;}
