.kk-section{margin:28px 0}
.kk-panel{padding:30px}
.kk-panel h2{margin:0 0 10px;font-size:1.7rem}
.kk-panel>p{margin:0 0 22px;color:var(--text-secondary);max-width:70ch}
.kk-field{display:block}
.kk-field-label{display:block;margin-bottom:10px;font-weight:800;font-size:.92rem}
.kk-field-row{display:flex;flex-wrap:wrap;gap:20px 28px;align-items:center;margin:22px 0}
.kk-field-row label.kk-field{display:flex;flex-direction:column;gap:8px;font-size:.9rem;color:var(--text-secondary)}
.kk-field-row select{padding:9px 12px;border-radius:10px;border:1px solid var(--cr-ffffff-a150);background:var(--cf-ffffff-a040);color:var(--text-primary)}
.kk-checkbox{display:flex;align-items:center;gap:9px;color:var(--text-secondary);font-size:.92rem}
.kk-checkbox input{width:18px;height:18px}
.kk-chips{display:flex;flex-wrap:wrap;gap:9px}
.kk-chip{--topic-color:var(--tech-blue);display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--topic-color) 35%,var(--cr-ffffff-a140));background:var(--cf-ffffff-a030);color:var(--text-secondary);cursor:pointer;font-size:.89rem;transition:.2s ease}
.kk-chip span{color:var(--text-muted);font-size:.82rem}
.kk-chip:hover{border-color:color-mix(in srgb,var(--topic-color) 60%,var(--cr-ffffff-a200))}
.kk-chip.is-active{background:color-mix(in srgb,var(--topic-color) 20%,var(--cf-ffffff-a030));border-color:var(--topic-color);color:var(--text-primary);font-weight:800}
.kk-boxes{margin:24px 0 6px}
.kk-box-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:end;height:78px}
.kk-box-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%}
.kk-box-bar{width:100%;max-width:44px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--tech-green),color-mix(in srgb,var(--tech-green) 55%,var(--tech-blue)))}
.kk-box-col span{font-weight:900;font-size:.92rem}
.kk-box-col small{color:var(--text-muted);font-size:.78rem}
.kk-box-caption{margin:12px 0 0;color:var(--text-secondary);font-size:.88rem}
.kk-start-message{min-height:1.4em;color:var(--tech-green);font-weight:700;margin:6px 0 20px}
.kk-reset-details{margin-top:26px;border-top:1px solid var(--cr-ffffff-a090);padding-top:18px}
.kk-reset-details summary{cursor:pointer;color:var(--text-secondary);font-size:.9rem}
.kk-reset-details p{color:var(--text-secondary);font-size:.88rem}
.kk-reset-box{margin-top:12px;padding:16px;border:1px solid var(--cr-ff6b6b-a350);border-radius:14px;background:var(--cf-ff6b6b-a060)}
.kk-reset-actions{display:flex;gap:10px;margin-top:10px}
.kk-save-note{margin-top:18px;color:var(--text-muted);font-size:.82rem}
.kk-stage-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:800}
.kk-box-badge{padding:5px 12px;border-radius:999px;background:var(--cf-00bd9d-a120);border:1px solid var(--cr-00bd9d-a350);color:var(--tech-green);font-size:.84rem}
.kk-progress{width:100%;height:8px;border-radius:999px;overflow:hidden;appearance:none;border:none;margin-bottom:26px}
.kk-progress::-webkit-progress-bar{background:var(--cf-ffffff-a080);border-radius:999px}
.kk-progress::-webkit-progress-value{background:linear-gradient(90deg,var(--tech-blue),var(--tech-green));border-radius:999px}
.kk-progress::-moz-progress-bar{background:linear-gradient(90deg,var(--tech-blue),var(--tech-green));border-radius:999px}
.kk-card{min-height:220px;border:1px solid var(--cr-ffffff-a120);border-radius:22px;background:linear-gradient(150deg,var(--cf-ffffff-a050),var(--cf-ffffff-a015));padding:34px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:16px}
.kk-card-subject{margin:0;color:var(--tech-blue);font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.kk-card-term{margin:0;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:950;letter-spacing:-.02em}
.kk-card-back{display:flex;flex-direction:column;gap:14px;max-width:62ch}
.kk-card-desc{margin:0;color:var(--text-primary);font-size:1.05rem;line-height:1.6}
.kk-card-example{margin:0;color:var(--text-secondary)}
.kk-card-example strong{color:var(--tech-green)}
.kk-card-link{color:var(--tech-blue);text-decoration:none;font-weight:800}
.kk-card-link:hover{text-decoration:underline}
.kk-rate-buttons{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.kk-rate-btn{min-height:56px;border-radius:16px;border:1px solid var(--cr-ffffff-a140);font-weight:900;font-size:.98rem;cursor:pointer;transition:.2s ease}
.kk-rate-no{background:var(--cf-ff6b6b-a100);color:var(--ct-ffb3b3);border-color:var(--cr-ff6b6b-a350)}
.kk-rate-no:hover{background:var(--cf-ff6b6b-a180)}
.kk-rate-yes{background:var(--cf-00bd9d-a140);color:var(--ct-9df3e0);border-color:var(--cr-00bd9d-a400)}
.kk-rate-yes:hover{background:var(--cf-00bd9d-a220)}
.kk-quit-button{display:block;margin:20px auto 0;background:none;border:none;color:var(--text-muted);text-decoration:underline;cursor:pointer;font-size:.86rem}
.kk-result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
@media(max-width:620px){.kk-panel{padding:20px}.kk-box-row{gap:6px}.kk-rate-buttons{grid-template-columns:1fr}.kk-card{padding:22px}}
