.ksq{border:1px solid #d6e4f4;border-radius:12px;padding:24px;margin:24px 0;background:#fff;color:#243449;font-size:16px;line-height:1.7}
.ksq .ksq-meta{font-size:.84em;color:#315d88}
.ksq h3{margin:12px 0;color:#162e48}
.ksq .ksq-question{line-height:1.85;font-weight:600;color:#243449}
.ksq .ksq-options{display:grid;gap:10px;margin:18px 0}
.ksq .ksq-option{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid #dbe5f1;border-radius:8px;cursor:pointer;color:#243449;background:#fff;line-height:1.7}
.ksq .ksq-option:has(input:checked){background:#edf6ff;border-color:#397fc5}
.ksq .ksq-option input{margin-top:6px;flex-shrink:0}
.ksq .ksq-option.ksq-option--correct,.ksq .ksq-option.ksq-option--correct:has(input:checked){background:#e8f7ec;border:2px solid #23844c;color:#175934;font-weight:600}
.ksq .ksq-option.ksq-option--wrong,.ksq .ksq-option.ksq-option--wrong:has(input:checked){background:#fff0f0;border:2px solid #cf3d43;color:#95252b}
.ksq .ksq-submit,.ksq .ksq-retry{background:#2266a8;color:#fff;border:0;border-radius:8px;padding:12px 24px;cursor:pointer;font-weight:700}
.ksq .ksq-submit:hover,.ksq .ksq-retry:hover{background:#154b7d;color:#fff}
.ksq .ksq-result{background:#f0f7ff;border-left:4px solid #2877bb;padding:16px;margin:18px 0;color:#243449}
.ksq .ksq-result--correct{background:#eef9f1;border-left-color:#23844c}
.ksq .ksq-result--wrong{background:#fff2f2;border-left-color:#cf3d43}
.ksq .ksq-result-heading{display:flex;align-items:center;gap:10px;font-size:1.25em;line-height:1.5}
.ksq .ksq-result--correct .ksq-result-heading{color:#17683b}
.ksq .ksq-result--wrong .ksq-result-heading{color:#ab252d}
.ksq .ksq-result-mark{font-size:1.5em;font-weight:800;line-height:1}
.ksq .ksq-correct-answer{font-weight:700;margin:12px 0}
.ksq .ksq-explanations{margin-top:18px;padding-top:12px;border-top:1px solid #d7e1e8}
.ksq .ksq-explanations h4{font-size:1em;margin:0 0 12px;color:#243449}
.ksq .ksq-explanation{margin:0 0 12px}
.ksq .ksq-explanation strong{display:block;color:#243449}
.ksq .ksq-explanation p{margin:2px 0 0;line-height:1.7;color:#334155;white-space:pre-line}
.ksq [hidden]{display:none!important}
@media(max-width:600px){.ksq{padding:16px}}
/* v0.1.2: independent answer feedback and neutral explanation panel */
.ksq .ksq-result{background:transparent;border:0;padding:0;margin:22px 0;color:#243449}
.ksq .ksq-result--correct,.ksq .ksq-result--wrong{background:transparent;border:0}
.ksq .ksq-result-heading{padding:14px 16px;border-left:4px solid #23844c;background:#eaf7ee;border-radius:4px;color:#17683b}
.ksq .ksq-result--wrong .ksq-result-heading{border-left-color:#cf3d43;background:#fff0f0;color:#a3262c}
.ksq .ksq-correct-answer{background:#fff0f0;padding:10px 16px;margin:0;font-weight:700;color:#852328}
.ksq .ksq-explanations{margin:16px 0 0;border:1px solid #d6e4f4;border-radius:10px;background:#fff;padding:16px}
.ksq .ksq-explanations h4{background:#eaf3fb;padding:10px 12px;margin:0 0 12px;border-radius:5px;color:#163b61;font-size:1.05em}
.ksq .ksq-explanation{margin:0;padding:12px 0;border-bottom:1px solid #e4edf6}
.ksq .ksq-explanation:last-child{border-bottom:0}
.ksq .ksq-explanation-heading{display:flex;align-items:center;gap:10px;margin-bottom:5px}
.ksq .ksq-explanation-badge{display:inline-block;border-radius:50px;font-size:.8em;font-weight:700;padding:1px 10px}
.ksq .ksq-badge--correct{color:#16643b;background:#e0f3e5}
.ksq .ksq-badge--wrong{color:#993039;background:#fde9ea}
.ksq-history{border:1px solid #d6e4f4;background:#fff;border-radius:12px;padding:22px;margin:22px 0;color:#243449}
.ksq-history h3{margin:0 0 12px;color:#162e48}
.ksq-history h4{margin:20px 0 10px}
.ksq-history-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ksq-history-stat{border:1px solid #d6e4f4;border-radius:8px;background:#f4f9fe;padding:12px;text-align:center;display:flex;flex-direction:column}
.ksq-history-stat strong{font-size:1.5em;color:#175a96}
.ksq-history-stat span{font-size:.85em}
.ksq-history-list{padding-left:1.5em}
.ksq-history-list li{margin-bottom:8px}
.ksq-history-note{font-size:.85em;color:#536579;margin-top:16px}
.ksq-history [hidden]{display:none!important}
@media(max-width:600px){.ksq-history{padding:16px}.ksq-history-stats{grid-template-columns:1fr}}
/* v0.2.0: attached illustrations and three-color self-assessment */
.ksq .ksq-question-image{margin:16px 0}
.ksq .ksq-question-image img,.ksq .ksq-explanation-image{display:block;max-width:100%;height:auto;border-radius:6px;margin:12px 0}
.ksq .ksq-rating-panel{margin-top:18px;padding:18px;border:1px solid #d6e4f4;border-radius:10px;background:#fff}
.ksq .ksq-rating-panel h4{margin:0 0 8px;font-size:1.08em;color:#203d5f}
.ksq .ksq-rating-guide{font-size:.9em;color:#52677b}
.ksq .ksq-rating-buttons{display:grid;gap:9px;margin-top:12px}
.ksq .ksq-rating-button{display:block;width:100%;text-align:left;border-radius:8px;padding:12px 14px;font-size:.95em;font-weight:700;cursor:pointer;border:1px solid}
.ksq .ksq-rating-button--blue{background:#e7f1ff;color:#1765c1;border-color:#a6c7f3}
.ksq .ksq-rating-button--yellow{background:#fff4d6;color:#795000;border-color:#dfbb5d}
.ksq .ksq-rating-button--red{background:#ffe9e9;color:#a72727;border-color:#e8a2a2}
.ksq .ksq-rating-button[aria-pressed="true"]{outline:3px solid currentColor;outline-offset:1px}
.ksq .ksq-rating-button:focus-visible{outline:3px solid #253d59;outline-offset:2px}
.ksq .ksq-rating-message{font-weight:700;margin-bottom:0}
.ksq-rating-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 16px}
.ksq-rating-stat{padding:12px;text-align:center;border:1px solid;border-radius:8px;display:flex;flex-direction:column}
.ksq-rating-stat strong{font-size:1.4em}.ksq-rating-stat span{font-size:.82em}
.ksq-rating-stat--blue{color:#1765c1;background:#e7f1ff;border-color:#b9d5f5}
.ksq-rating-stat--yellow{color:#795000;background:#fff4d6;border-color:#efd493}
.ksq-rating-stat--red{color:#a72727;background:#ffe9e9;border-color:#efbcbc}
@media(max-width:600px){.ksq-rating-stats{grid-template-columns:1fr}}

/* Ruby annotations in quiz text and explanations */
.ksq ruby { ruby-position: over; }
.ksq rt { font-size: 0.62em; line-height: 1.15; color: #374c66; font-weight: 400; }
.ksq ruby rp { display: none; }
/* v0.3.0: filtered, paginated learning history */
.ksq-history-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
.ksq-history .ksq-rating-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
.ksq-history-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0;}
.ksq-history-filter{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:.9em;}
.ksq-history-select{display:block;width:100%;max-width:100%;border:1px solid #bad1e8;border-radius:6px;background:#fff;color:#243449;padding:9px 6px;}
.ksq-history-count{font-size:.88em;color:#52677b;margin:12px 0;}
.ksq-history-record{padding:15px 12px;border:1px solid #dae6f3;border-radius:8px;margin:10px 0;background:#fff;}
.ksq-history-record-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.ksq-history-record-heading strong{color:#1b3858;}
.ksq-history-grade{background:#edf0f3;border-radius:20px;padding:3px 9px;font-size:.8em;white-space:nowrap;}
.ksq-history-grade--blue{background:#e7f1ff;color:#1765c1;}
.ksq-history-grade--yellow{background:#fff4d6;color:#795000;}
.ksq-history-grade--red{background:#ffe9e9;color:#a72727;}
.ksq-history-record-meta{font-size:.9em;color:#4b6076;margin:8px 0;}
.ksq-history-review{color:#175a96;font-weight:700;text-decoration:underline;}
.ksq-history-pagination{display:flex;gap:12px;align-items:center;justify-content:center;margin:18px 0;}
.ksq-history-page{border:1px solid #bad1e8;border-radius:6px;background:#f4f9fe;color:#175a96;padding:8px 16px;cursor:pointer;}
.ksq-history-page:disabled{opacity:.45;cursor:default;}
.ksq-review-back{margin:12px 0;}
@media(max-width:600px){.ksq-history-filters{grid-template-columns:1fr}.ksq-history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ksq-history .ksq-rating-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ksq-rating-stat{padding:8px 3px}.ksq-rating-stat span{font-size:.7em}}

/* v0.3.1: compact, accessible review cards */
.ksq-history-record{padding:16px;margin:10px 0 12px;}
.ksq-history-record-heading{gap:10px;align-items:flex-start;}
.ksq-history-record-heading strong{font-size:1em;line-height:1.6;flex:1 1 210px;min-width:0;overflow-wrap:anywhere;}
.ksq-history-record-details{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:10px 0 12px;color:#334b67;font-size:.9em;}
.ksq-history-record-detail{white-space:nowrap;}
.ksq-history-detail-label{color:#54687f;}
.ksq-history-record-actions{padding-top:12px;border-top:1px solid #e2eaf4;}
.ksq-history .ksq-history-review{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:42px;padding:10px 20px;border:0;border-radius:7px;background:#2266a8;color:#fff;font-size:.9em;font-weight:700;text-decoration:none;line-height:1.5;transition:background-color .15s ease;}
.ksq-history .ksq-history-review:hover{background:#164d80;color:#fff;text-decoration:none;}
.ksq-history .ksq-history-review:focus-visible{outline:3px solid #efad2e;outline-offset:3px;}
@media(max-width:600px){
 .ksq-history-record{padding:13px;}
 .ksq-history-record-heading{align-items:flex-start;}
 .ksq-history-record-details{gap:6px 12px;}
 .ksq-history .ksq-history-review{width:100%;}
}

/* v0.4.0: browser-only export/import controls */
.ksq-backup{border-top:1px solid #dce7f3;margin-top:24px;padding-top:18px}
.ksq-backup h4{margin:0 0 10px;color:#173653}
.ksq-backup-guide,.ksq-import-warning{font-size:.9em;color:#52677b}
.ksq-backup-button{display:inline-block;background:#2266a8;color:#fff;border:0;border-radius:6px;cursor:pointer;padding:11px 15px;font-weight:700;margin:6px 8px 6px 0}
.ksq-backup-button:hover{background:#164d80}
.ksq-import-label{display:block;margin:14px 0 6px;font-weight:700;font-size:.9em}
.ksq-import-input{display:block;width:100%;max-width:100%;margin:7px 0;box-sizing:border-box;font-weight:400}
.ksq-backup-message{font-size:.9em;color:#19527e;margin:8px 0}
.ksq-import-preview{background:#f5f9ff;border:1px solid #cfdff0;border-radius:8px;padding:12px;margin-top:10px}
.ksq-import-preview[hidden]{display:none!important}
.ksq-import-mode-label{display:block;font-size:.9em;font-weight:700;margin:10px 0}
.ksq-import-mode{display:block;max-width:100%;padding:7px;border:1px solid #bdd2e9;border-radius:6px;margin-top:6px}
.ksq-backup-cancel{border:1px solid #c6d3e0;background:#fff;border-radius:6px;padding:10px 14px;cursor:pointer}

/* v0.7.0: consecutive review by latest self-assessment */
.ksq-review-launcher{margin:18px 0 22px;padding:16px;border:1px solid #d2e1f3;border-radius:9px;background:#fbfdff}
.ksq-review-launcher h4{margin:0 0 8px;color:#173b62}
.ksq-review-hint{margin:0 0 12px;font-size:.9em;color:#52677b}
.ksq-review-launcher-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ksq-review-launch{display:flex;align-items:center;justify-content:center;text-align:center;min-height:43px;padding:8px;border:1px solid #b9d2ee;border-radius:6px;background:#eaf3ff;color:#145b99!important;font-weight:700;text-decoration:none!important;font-size:.9em}
.ksq-review-launch--red{background:#fff0f0;border-color:#ebaaaa;color:#a82727!important}
.ksq-review-launch--yellow{background:#fff6de;border-color:#e9ca6a;color:#805900!important}
.ksq-review-launch[aria-disabled="true"]{opacity:.48;cursor:not-allowed}
.ksq-review-launch:focus-visible,.ksq-review-next:focus-visible,.ksq-review-exit:focus-visible{outline:3px solid #e5a521;outline-offset:3px}
.ksq-review-session{margin:16px 0;border:1px solid #c9deef;background:#f4f9ff;border-radius:8px;padding:14px;color:#173b62}
.ksq-review-session p{margin:7px 0;font-size:.9em}
.ksq-review-session-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ksq-review-next,.ksq-review-exit{display:inline-block;border-radius:6px;padding:10px 16px;font-weight:700;text-decoration:none!important}
.ksq-review-next{background:#2266a8;color:#fff!important}
.ksq-review-exit{border:1px solid #abc9e9;background:#fff;color:#19598f!important}
.ksq-review-complete{font-size:.9em}
@media(max-width:600px){.ksq-review-launcher-actions{grid-template-columns:1fr}.ksq-review-session-actions>a{width:100%;box-sizing:border-box;text-align:center}}

/* v0.7.1: blue means confident understanding; combined review uses neutral gray */
.ksq-review-launch--blue{background:#e7f1ff;border-color:#a7c6ee;color:#1765c1!important}
.ksq-review-launch--both{background:#f4f5f7;border-color:#c8cdd5;color:#374151!important}

/* v0.7.3: compact review progress and three-column ratings on mobile */
.ksq-history .ksq-rating-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ksq-history .ksq-rating-stat{min-width:0;padding:12px 5px;box-sizing:border-box;text-align:center}
.ksq-history .ksq-rating-stat strong{display:block}
.ksq-history .ksq-rating-stat span{display:block;line-height:1.45;overflow-wrap:anywhere}
.ksq-review-session{padding:12px 14px;margin:12px 0}
.ksq-review-session>strong{display:block;margin:0 0 5px}
.ksq-review-session .ksq-review-progress{margin:0 0 8px;font-weight:600}
.ksq-review-meter{height:9px;width:100%;background:#dce8f5;border-radius:99px;overflow:hidden}
.ksq-review-meter-fill{display:block;height:100%;width:0;background:#2266a8;border-radius:99px;transition:width .2s ease}
.ksq-review-session .ksq-review-random-note{font-size:.78em;color:#52677b;margin:6px 0 12px}
.ksq-review-session-actions{gap:8px}
@media(max-width:600px){
 .ksq-history .ksq-rating-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .ksq-history .ksq-rating-stat{padding:9px 3px}
 .ksq-history .ksq-rating-stat strong{font-size:1.05em}
 .ksq-history .ksq-rating-stat span{font-size:.68em}
 .ksq-review-session{padding:12px}
 .ksq-review-session-actions>a{width:100%;box-sizing:border-box;text-align:center}
}

/* v0.8.1: notes appear after choices, before the submit action. */
.ksq-note{margin:12px 0 18px;padding:10px 13px;border-left:3px solid #b9c9d9;background:#f7f9fc;color:#344454;font-size:.94em;line-height:1.8;white-space:normal}
.ksq-note ruby rt,.ksq-case ruby rt{font-size:.58em}

/* v0.8.2: Center question illustrations only; leave explanation images and choices unchanged. */
.ksq .ksq-question-image { text-align: center; }
.ksq .ksq-question-image img { display: block; width: auto; max-width: 100%; height: auto; margin: 12px auto; }

/* Ver.0.8.3: published question catalog */
.ksq-catalog{max-width:920px;margin:20px auto;color:#25394b}
.ksq-catalog h2{margin:0 0 12px}
.ksq-catalog-intro{color:#536779;line-height:1.75}
.ksq-catalog-years{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0 25px}
.ksq-catalog-year{display:inline-block;padding:9px 14px;border:1px solid #cbdced;border-radius:9px;background:#f4f8fd;color:#1f5e98;text-decoration:none;font-weight:600}
.ksq-catalog-year.is-current{background:#2368a9;border-color:#2368a9;color:white}
.ksq-catalog-year small{font-weight:400}
.ksq-catalog-count{color:#586d80;font-size:.9em}
.ksq-catalog-list{border:1px solid #dce5ef;border-radius:12px;overflow:hidden;background:white}
.ksq-catalog-item{display:flex;align-items:center;gap:16px;padding:15px 18px;border-bottom:1px solid #e7edf3;text-decoration:none;color:#25394b}
.ksq-catalog-item:last-child{border-bottom:0}
.ksq-catalog-item:hover,.ksq-catalog-item:focus{background:#f0f6fc}
.ksq-catalog-item-title{min-width:72px;font-weight:700;color:#1c5d99}
.ksq-catalog-item-desc{flex:1;min-width:0;color:#455e71;font-size:.94em;overflow-wrap:anywhere}
.ksq-catalog-chevron{font-size:1.6em;color:#6d8aa4}
.ksq-catalog-pagination,.ksq-catalog-question-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0;flex-wrap:wrap}
.ksq-catalog-pagination a,.ksq-catalog-question-nav a,.ksq-catalog-back a{display:inline-block;border-radius:8px;border:1px solid #cbdced;padding:9px 13px;text-decoration:none;color:#2368a9;background:#f4f8fd}
.ksq-catalog-back{margin:14px 0 22px}
@media(max-width:600px){.ksq-catalog-item{gap:10px;padding:13px 12px}.ksq-catalog-item-title{min-width:56px}.ksq-catalog-item-desc{font-size:.85em}.ksq-catalog-year{padding:8px 10px}}

/* Ver.0.8.5: clean catalog cards with a 150-character question preview. */
.ksq-catalog .ksq-catalog-item{display:flex;align-items:center;gap:12px;padding:17px 18px;color:#25394b;text-decoration:none!important}
.ksq-catalog .ksq-catalog-item-body{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:7px}
.ksq-catalog .ksq-catalog-item-title{display:inline-block;min-width:0;background:#2165a5;color:#fff;border-radius:5px;padding:5px 12px;font-size:.88em;font-weight:700;line-height:1.55;text-decoration:none!important}
.ksq-catalog .ksq-catalog-item-subject{font-size:.83em;color:#6599c3;font-weight:600;line-height:1.5;text-decoration:none!important}
.ksq-catalog .ksq-catalog-item-question{display:block;color:#25394b;line-height:1.75;font-size:.96em;overflow-wrap:anywhere;text-decoration:none!important}
.ksq-catalog .ksq-catalog-chevron{flex:none;color:#6d8aa4}
.ksq-catalog a.ksq-catalog-item:hover,.ksq-catalog a.ksq-catalog-item:focus-visible{background:#f0f6fc;text-decoration:none!important}
@media(max-width:600px){.ksq-catalog .ksq-catalog-item{padding:15px 12px;gap:8px}.ksq-catalog .ksq-catalog-item-question{font-size:.93em}}

/* v0.8.7: exam, subject and direct-number catalog navigation */
.ksq-catalog-modes{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 18px}
.ksq-catalog .ksq-catalog-mode{display:inline-block;border:1px solid #cbdced;background:#f5f9fe;color:#2165a5;border-radius:7px;padding:10px 15px;text-decoration:none!important;font-weight:700}
.ksq-catalog .ksq-catalog-mode.is-current{background:#2165a5;border-color:#2165a5;color:#fff}
.ksq-catalog-ranges{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 20px}
.ksq-catalog .ksq-catalog-ranges a{padding:8px 11px;border:1px solid #cbdced;border-radius:6px;background:#f5f9fe;color:#2165a5;text-decoration:none!important;font-size:.9em}
.ksq-catalog-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;padding:17px;border:1px solid #dce5ef;border-radius:9px;background:#f8fbff;margin:18px 0}
.ksq-catalog-form label{display:flex;flex-direction:column;gap:5px;flex:1 1 145px;font-weight:600;font-size:.9em}
.ksq-catalog-form select,.ksq-catalog-form input{min-height:40px;max-width:100%;width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid #cbdced;border-radius:6px;background:#fff;color:#25394b}
.ksq-catalog-form button{min-height:40px;border:0;border-radius:6px;background:#2165a5;color:#fff;padding:8px 16px;cursor:pointer;font-weight:700}
.ksq-catalog-form button:hover,.ksq-catalog-form button:focus-visible{background:#164f85}
.ksq-catalog-error{color:#a62828;background:#fff0f0;padding:12px;border-radius:7px}
@media(max-width:600px){.ksq-catalog-modes{gap:5px}.ksq-catalog .ksq-catalog-mode{padding:9px 11px;font-size:.9em}.ksq-catalog-form{gap:10px;padding:12px}}

/* Ver.0.8.9: Cross-exam theme learning */
.ksq-related-theme{margin:22px 0 0;padding:17px 19px;border:1px solid #cbdced;border-radius:10px;background:#f5f9fe;color:#25394b}
.ksq-related-theme strong{display:block;margin-bottom:6px}
.ksq-related-theme p{margin:4px 0 13px;color:#526d83;font-size:.94em}
.ksq-related-theme-link{display:inline-block;padding:10px 16px;border-radius:7px;background:#2165a5;color:#fff!important;text-decoration:none!important;font-weight:700}
.ksq-related-theme-link:hover,.ksq-related-theme-link:focus{background:#174c7b;color:#fff!important}
.ksq-catalog-theme-note{font-size:.9em;color:#607387;margin:8px 0 14px}

/* 0.9.0: Cross-subject weak-theme review on learning history page */
.ksq-history .ksq-weak-themes{border:1px solid #cfdfef;background:#f9fbfe;border-radius:8px;margin:18px 0;padding:14px}
.ksq-history .ksq-weak-themes h4{margin:0 0 8px;background:#e5eef7;padding:9px 12px;color:#183b60}
.ksq-history .ksq-weak-themes-guide{font-size:.9em;line-height:1.7;color:#4e6278;margin:8px 0 12px}
.ksq-weak-themes-list{display:grid;gap:9px}
.ksq-weak-theme-item{background:#fff;border:1px solid #dce6f1;border-radius:7px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ksq-weak-theme-description strong{display:block;color:#1f3b57;margin-bottom:4px}
.ksq-weak-theme-description span{display:block;font-size:.8em;color:#566e84}
.ksq-history a.ksq-weak-theme-link{display:inline-block;background:#2165a5;color:white!important;text-decoration:none!important;padding:9px 12px;border-radius:6px;font-size:.86em;font-weight:700}
.ksq-history a.ksq-weak-theme-link:hover,.ksq-history a.ksq-weak-theme-link:focus{background:#174b7a;color:white!important}
.ksq-weak-themes-empty{color:#5a6f83;margin:8px 0}
@media(max-width:600px){.ksq-weak-theme-item{align-items:stretch;flex-direction:column}.ksq-history a.ksq-weak-theme-link{text-align:center}}

/* v0.9.1 learner score breakdown and unanswered practice */
.ksq-score-breakdown,.ksq-unseen-panel{border:1px solid #cfdfef;border-radius:8px;background:#f9fbfe;margin:18px 0;padding:14px}
.ksq-score-breakdown h4,.ksq-unseen-panel h4{background:#e5eef7;color:#183b60;padding:9px 12px;margin:0 0 9px}
.ksq-analysis-guide{font-size:.9em;line-height:1.7;color:#51657a;margin:8px 0 12px}
.ksq-score-tabs{display:flex;gap:8px;margin:12px 0}
.ksq-score-tab{border:1px solid #a8c8eb;background:#fff;color:#1b5d9a;border-radius:5px;padding:8px 18px;cursor:pointer}
.ksq-score-tab.is-current{background:#2265a5;color:#fff}
.ksq-score-groups{max-height:490px;overflow-y:auto;border:1px solid #dae4ee;background:#fff;border-radius:6px}
.ksq-score-row{padding:12px;border-bottom:1px solid #e1e9f1}
.ksq-score-row:last-child{border-bottom:0}
.ksq-score-title{display:block;color:#1e4063}
.ksq-score-meta,.ksq-score-rating{margin:5px 0;font-size:.88em;line-height:1.6}
.ksq-score-progress{height:8px;background:#e5edf6;border-radius:8px;overflow:hidden;margin:8px 0}
.ksq-score-progress-fill{height:100%;display:block;background:#2771b8}
.ksq-score-link{font-size:.88em}
.ksq-unseen-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ksq-unseen-label span{display:block;font-size:.86em;font-weight:600;margin-bottom:4px}
.ksq-unseen-label select{width:100%;max-width:100%}
.ksq-unseen-summary{margin:12px 0 8px;color:#375b78}
.ksq-unseen-launch{background:#2165a5;border:0;border-radius:5px;color:#fff;cursor:pointer;padding:10px 17px;font-weight:600}
.ksq-unseen-launch:disabled{background:#b5c6d7;cursor:default}
@media(max-width:560px){.ksq-unseen-controls{grid-template-columns:1fr}}

/* v0.9.2 common navigation and unanswered practice */
.ksq-global-links{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.ksq-global-links a{flex:1 1 180px;display:inline-flex;justify-content:center;align-items:center;min-height:42px;padding:10px 14px;box-sizing:border-box;background:#f4f8fd;border:1px solid #b6cfe8;color:#19598f!important;font-weight:700;border-radius:7px;text-align:center;text-decoration:none!important}
.ksq-global-links a:hover,.ksq-global-links a:focus-visible{background:#e7f1fc;text-decoration:none!important}
.ksq-unseen-navigation{border:1px solid #c9deef;background:#f4f9ff;border-radius:9px;margin:20px 0;padding:16px;color:#173b62}
.ksq-unseen-navigation strong{display:block;margin-bottom:6px}
.ksq-unseen-navigation p{font-size:.9em;margin:6px 0 12px}
.ksq-unseen-navigation button{background:#2165a5;color:white;border:0;border-radius:7px;font-size:1em;font-weight:700;padding:11px 18px;cursor:pointer;min-height:44px}
.ksq-unseen-navigation button:disabled{background:#a9b8c6;cursor:not-allowed}
@media(max-width:600px){.ksq-global-links{flex-direction:column}.ksq-global-links a,.ksq-unseen-navigation button{width:100%}}

/* v0.9.9: compact learner dashboard; existing history and study-time data untouched */
.ksq-dashboard-time-summary{margin:16px 0;padding:15px;border:1px solid #c9dcf2;border-radius:9px;background:#f7faff}
.ksq-dashboard-time-summary h4{margin:0 0 12px!important;color:#194b7c}
.ksq-dashboard-time-cells{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ksq-dashboard-time-cell{background:#fff;border:1px solid #d7e4f2;border-radius:7px;padding:10px;display:flex;flex-direction:column;text-align:center}
.ksq-dashboard-time-cell span{font-size:.78em;color:#536579}.ksq-dashboard-time-cell strong{font-size:1.2em;color:#195e9e}
.ksq-dashboard-time-bar{height:9px;background:#dfeaf5;border-radius:50px;overflow:hidden;margin:12px 0}.ksq-dashboard-time-bar span{height:100%;display:block;background:#2165a5}
.ksq-dashboard-nav{display:flex;gap:7px;flex-wrap:wrap;padding:10px 0;margin:12px 0;border-bottom:1px solid #d5e2f1;scroll-margin-top:24px}
.ksq-dashboard-tab{background:#f4f8fd;color:#1b568b;border:1px solid #cbdcf0;border-radius:6px;padding:10px 12px;font-size:.88em;font-weight:700;cursor:pointer}
.ksq-dashboard-tab.is-current,.ksq-dashboard-tab[aria-selected=true]{background:#2165a5;border-color:#2165a5;color:#fff}
.ksq-dashboard-tab:focus-visible,.ksq-dashboard-shortcut:focus-visible{outline:3px solid #f2b84b;outline-offset:2px}
.ksq-dashboard-panel[hidden]{display:none!important}.ksq-dashboard-panel{padding:4px 0 12px;min-width:0}
.ksq-dashboard-panel h4:first-child{margin-top:8px}.ksq-dashboard-lead{color:#52677b;font-size:.92em}
.ksq-dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.ksq-dashboard-shortcut{border:1px solid #bed5ef;border-radius:6px;background:#fff;color:#195e9e;font-size:.89em;font-weight:600;text-align:left;padding:10px 12px;cursor:pointer}
.ksq-dashboard-shortcut:hover{background:#eaf3ff}.ksq-dashboard-time-summary>.ksq-dashboard-shortcut{display:block;width:100%;text-align:center}
.ksq-dashboard-panel .ksq-dashboard-time-details .ksq-study-time{margin:8px 0;border:0;padding:0}
@media(max-width:600px){.ksq-dashboard-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ksq-dashboard-tab{padding:9px 5px}.ksq-dashboard-shortcuts{grid-template-columns:1fr}.ksq-dashboard-time-cell strong{font-size:1.05em}}

/* v0.10.0: Let the learner score rows expand with the document, not nested scrolling. */
.ksq-history .ksq-score-groups {
  max-height: none !important;
  height: auto !important;
  overflow-y: visible !important;
  overflow-x: visible !important;
}
/* Override JIN link rules only for theme links in the learner breakdown. */
.ksq-history .ksq-score-breakdown a.ksq-score-link,
.ksq-history .ksq-score-groups a.ksq-score-link,
.ksq-history .ksq-score-breakdown a.ksq-score-link:visited {
  color: #2165a5 !important;
  text-decoration: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  font-weight: 700;
  display: inline-block;
  padding: 5px 0;
}
.ksq-history .ksq-score-breakdown a.ksq-score-link:hover,
.ksq-history .ksq-score-breakdown a.ksq-score-link:focus-visible {
  color: #174b7a !important;
  text-decoration: underline !important;
}
.ksq-history .ksq-score-breakdown a.ksq-score-link:focus-visible {
  outline: 2px solid #e2aa35; outline-offset: 3px;
}

/* Keyword search in the published past-question catalog (0.10.1). */
.ksq-catalog .ksq-catalog-search{padding:16px;margin:17px 0 20px;background:#f4f9ff;border:1px solid #d7e5f2;border-radius:10px}
.ksq-catalog .ksq-catalog-search label{display:block;margin:0 0 8px;font-weight:700;color:#164e82}
.ksq-catalog .ksq-catalog-search-row{display:flex;gap:9px;align-items:stretch}
.ksq-catalog .ksq-catalog-search-row input{flex:1 1 auto;min-width:0;width:100%;border:1px solid #bfd5e9;border-radius:6px;padding:10px 12px;background:#fff;font-size:15px;box-sizing:border-box}
.ksq-catalog .ksq-catalog-search-row button{flex:0 0 auto;border:0;border-radius:6px;background:#0b5aa4;color:#fff;font-size:14px;font-weight:700;padding:10px 19px;cursor:pointer}
.ksq-catalog .ksq-catalog-search-row button:hover,.ksq-catalog .ksq-catalog-search-row button:focus-visible{background:#084783}
.ksq-catalog .ksq-catalog-search p{font-size:12px;color:#60778e;margin:8px 0 0}
@media(max-width:480px){.ksq-catalog .ksq-catalog-search{padding:12px}.ksq-catalog .ksq-catalog-search-row button{padding:10px 13px}}
