.proto-banner{
  margin:12px auto 0;max-width:980px;padding:10px 16px;
  background:#fff4d0;border:1px solid #e0c36a;border-radius:10px;
  color:#5c4300;font-size:15px;line-height:1.5;
}
.practice-block{
  margin-top:18px;padding:16px 18px 18px;
  background:#f4f7ff;border:1.5px solid #bacaf6;border-radius:12px;
}
.practice-block h3{margin:0 0 8px;color:var(--action,#2456c8);font-size:18px;}
.practice-lead{margin:0 0 14px;font-size:16px;line-height:1.65;}
.pq{margin:0 0 16px;padding:14px 16px;background:#fff;border:1px solid #d7def2;border-radius:10px;}
.pq-tag{display:inline-block;margin:0 0 8px;padding:2px 8px;border-radius:999px;background:#eef3ff;color:#2456c8;font-size:13px;font-weight:700;}
.pq-q{margin:0 0 10px;font-size:17px;font-weight:700;line-height:1.6;}
.pq-inputs{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-end;margin-bottom:10px;}
.pq-inputs label{display:flex;flex-direction:column;gap:4px;font-size:14px;}
.pq-inputs input{
  width:7em;padding:6px 8px;font-size:16px;border:1px solid #b7c3e6;border-radius:8px;
}
.btn-check,.btn-ai,.btn-rand{
  appearance:none;border:0;border-radius:8px;padding:8px 14px;
  background:#2456c8;color:#fff;font-size:16px;font-weight:700;cursor:pointer;
}
.btn-ai{background:#116154;}
.btn-check:hover,.btn-ai:hover,.btn-rand:hover{filter:brightness(1.05);}
.btn-clear{
  appearance:none;border:1px solid #b7c3e6;border-radius:8px;padding:8px 12px;
  background:#fff;color:#445;font-size:14px;cursor:pointer;
}
.btn-clear:hover{background:#f3f6ff;}
.btn-row,.more-gen{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px;}
.more-gen{margin:4px 0 8px;}
.btn-ai:disabled,.btn-rand:disabled{opacity:.65;cursor:wait;}
.btn-inline{margin-top:8px;}
.pq-result{margin:10px 0 0;font-size:16px;line-height:1.6;}
.pq-result.ok{color:#116154;font-weight:700;}
.pq-result.bad{color:#a33;font-weight:700;}
.pq-steps{list-style:none;padding:0;margin:12px 0 0;counter-reset:pstep;}
.pq-steps>li{
  position:relative;counter-increment:pstep;padding-left:36px;margin:8px 0;
  font-size:16px;line-height:1.65;
}
.pq-steps>li:before{
  content:counter(pstep);position:absolute;left:0;top:.15em;
  width:24px;height:24px;border-radius:50%;background:#fff;
  border:1.5px solid #bacaf6;color:#2456c8;font-size:14px;font-weight:700;
  line-height:21px;text-align:center;
}
.ai-box{margin-top:8px;padding-top:8px;border-top:1px dashed #bacaf6;}
.ai-controls{display:flex;flex-wrap:wrap;gap:12px 18px;margin:8px 0 12px;}
.ai-controls label,.ai-req{display:flex;flex-direction:column;gap:4px;font-size:14px;}
.ai-controls select,.ai-req textarea{
  min-width:12em;padding:6px 8px;font-size:16px;border:1px solid #b7c3e6;border-radius:8px;
}
.ai-req{margin:0 0 12px;}
.ai-req textarea{width:100%;max-width:100%;resize:vertical;}
.ai-note{margin:10px 0 0;font-size:14px;color:#555;}
@media(max-width:760px){
  .practice-block{padding:12px;}
  .pq{padding:12px;}
  .pq-inputs input{width:6em;}
}

.ai-login a{color:#2456c8;font-weight:700;}

.more-gen[hidden],.btn-clear[hidden]{display:none;}

.pq-fig-wrap{margin:0 0 10px;}
.pq-fig{width:100%;max-width:440px;height:auto;display:block;background:#fffef8;border:1px solid #e4eaf8;border-radius:8px;}
.pq-fig text{font-family:"Noto Sans SC","Source Han Sans SC",system-ui,sans-serif;}
