/* Context first: subject → area → content list, one active response. */
.fx-navigation{position:sticky;top:0;grid-template-columns:repeat(4,minmax(0,1fr))!important;border-radius:12px;margin-bottom:10px!important}
.fx-navigation button{min-height:46px!important;font-size:12px!important}
.course-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--fx-muted);padding:8px 1px;margin:0 0 8px}
.course-bar b{color:var(--fx-ink)}.course-bar button{border:1px solid var(--fx-line);background:var(--fx-paper);border-radius:16px;color:var(--fx-green);font-size:11px;padding:7px 12px;min-height:36px;white-space:nowrap}
.course-bar button[aria-pressed=true]{background:var(--fx-soft);border-color:var(--fx-green)}
.fv-progress{padding:9px 12px!important;margin-bottom:12px!important;border-radius:12px}
.fv-card-progress{padding-bottom:0!important}.fv-progress-ring,.fv-flow,.fv-day-summary{display:none!important}
.fv-progress-detail{display:flex;align-items:center;justify-content:space-between;gap:12px}
.fv-card-counts strong{font-size:17px!important;white-space:nowrap!important}.fv-card-counts small{display:inline!important}
.fv-phase-title{font-size:12px!important;white-space:nowrap;margin:0!important}.fv-card-counts{gap:10px!important}.fv-card-counts>i{height:23px}.fv-card-counts span{font-size:10px}.fv-card-counts strong{font-size:17px;display:inline-block;margin:0 0 0 4px}.fv-card-counts>div{display:flex;align-items:center}.fv-card-counts strong small{font-size:10px}
.fv-input-instruction{display:none}.fx-card-meta:has(+.fx-card .subject-map){display:none}
.fx-study .fx-card,.fx-explore .fx-card{padding:16px!important;min-height:0!important;max-height:none!important}
.fx-study .fx-card-content,.fx-explore .fx-card-content{max-height:none!important;min-height:0!important}
.fx-card-face-label{font-size:10px!important;margin-bottom:12px!important}.fx-card-flip{font-size:10px;margin:10px 0 0!important;padding-top:8px!important}
.subject-map-heading{margin:0 0 14px!important}.subject-map-heading h4{font-size:14px!important;line-height:1.5!important;font-weight:600;color:var(--fx-muted);margin:0 0 3px!important}
.question-area{font-size:21px;font-weight:800;line-height:1.4;letter-spacing:-.03em;color:var(--fx-ink);margin-bottom:6px;word-break:keep-all}
.subject-map-heading .question-instruction{font-size:12px!important;line-height:1.5!important;margin:0!important;color:var(--fx-muted)}
.subject-map.names-only h4{font-size:20px!important;color:var(--fx-ink)}
.subject-map .cs-table{table-layout:fixed!important;width:100%!important;font-size:15px!important;line-height:1.65!important}
.subject-map .cs-table th:first-child{width:auto!important}.subject-map .cs-table th,.subject-map .cs-table td{padding:9px 10px!important;line-height:1.65!important;vertical-align:middle}
.subject-map .cs-table .semantic-current-cell>td{background:var(--fx-soft);color:var(--fx-ink);font-weight:650}
.subject-map .cs-table .context-row>td{color:var(--fx-muted);font-weight:400}
.subject-map .area-elements thead th:first-child{white-space:nowrap;font-size:11px;padding:9px 4px!important;text-align:center}.subject-map .area-elements tbody th{text-align:center}
.subject-map .cs-table .semantic-current-cell{border:0!important;padding:0!important}.subject-map .cs-table .semantic-current-cell>th{border-left:3px solid var(--fx-green)}
.subject-map .cs-blank{white-space:normal;max-width:100%;min-width:64px;box-sizing:border-box;padding:1px 8px;outline:0;border:1px solid var(--fx-green);border-bottom:2px solid var(--fx-green);margin:0 3px;font-weight:700;vertical-align:baseline}
.subject-map .cs-blank b{border:0;padding:0;font-size:11px}.subject-map .spiral-context{font-size:11px;margin:12px 0 0}.subject-map .spiral-context summary{min-height:32px;padding:6px 0}
.subject-map .answer-related-context{font-size:12px}.subject-map .answer-related-context summary{cursor:pointer;padding:5px 0}
#fx-card .coverage-note,#fx-card .cs-cue{display:none}
.fx-browse-kinds.fx-preview-levels{flex-wrap:wrap;overflow:visible}
.fx-preview-note{margin:8px 0;font-size:12px;line-height:1.6;color:var(--muted)}
.cs-standard-code{display:block;margin:0 0 9px;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:12px;line-height:1.5;font-weight:600;color:var(--fx-green,#285c4a);letter-spacing:0;overflow-wrap:anywhere}
.fx-root:has(#science-answer) .fx-answer-actions{display:none}.fx-root:has(#science-answer) .fx-card-flip{display:none}
.science-check{padding:14px!important;margin:10px 0!important;border-radius:12px!important}.science-check label[for=science-answer]{font-size:12px}.science-check input#science-answer{margin:6px 0!important;font-size:16px!important;min-height:44px}
.science-buttons{gap:8px}.science-check .fx-primary,.science-check .fx-secondary{font-size:12px!important;min-height:44px;padding:10px!important}
.confidence-option{font-size:11px;margin:6px 0}.confidence-option summary{cursor:pointer}.science-confidence{margin:8px 0}
#science-status{font-size:10px;line-height:1.5;margin:8px 0 0}
#science-feedback:focus-visible,#course-tour-title:focus-visible{outline:2px solid var(--fx-green,#146b50);outline-offset:4px}
.fx-swipe-hints{font-size:10px}.fx-rate{font-size:14px!important;min-height:52px!important}.fx-rate small{font-size:10px!important}
.fx-card-wrap:has(.science-check)+.fx-answer-actions{padding-top:4px}
.course-finish{padding:28px 18px;background:var(--fx-paper);border:1px solid var(--fx-line);border-radius:18px;margin-top:18px}.course-finish h2{font-size:25px;line-height:1.4}.course-finish p{font-size:14px;line-height:1.7;color:var(--fx-muted)}.course-finish small{color:var(--fx-green);font-weight:700}.course-next-time{padding:16px;border-radius:10px;background:var(--fx-soft);font-size:12px;margin:20px 0}.course-next-time strong{display:block;font-size:21px;color:var(--fx-green);margin-top:5px}
@media(max-width:360px){.fv-phase-title{font-size:11px!important}.fv-card-counts{gap:6px!important}.fv-card-counts span{font-size:9px}.question-area{font-size:19px}.subject-map .cs-table td{font-size:14px}.course-bar{font-size:10px}}

.fx-subject-scope fieldset{border:0;padding:0;margin:16px 0}.fx-subject-scope legend{font-size:13px;font-weight:600;margin-bottom:8px}.fx-subject-scope>small{color:var(--fx-muted,#65756f);font-size:12px}

/* Stable cloze geometry: only ink changes when the card is revealed. */
#focus-app #fx-card .fp-slot{display:inline-grid!important;grid-template-columns:auto minmax(0,1fr);column-gap:.32em;align-items:baseline;vertical-align:baseline;box-sizing:border-box;max-width:100%;min-width:2.5em;margin:0 .08em;padding:.12em .35em!important;border:1px solid #a8c6b9;border-radius:6px;background:#f1f6f3;font:inherit;font-weight:600;line-height:1.6;letter-spacing:normal;white-space:normal;overflow-wrap:anywhere;box-shadow:none}
#focus-app #fx-card .fp-slot .fp-slot-number{margin:0;grid-area:1/1;font-size:10px;font-weight:500;line-height:inherit;color:#487863;border:0;padding:0}
#focus-app #fx-card .fp-slot-reserve,#focus-app #fx-card .fp-slot-value{grid-area:1/2;min-width:0;font:inherit;line-height:inherit;overflow-wrap:anywhere}
#focus-app #fx-card .fp-slot-reserve{visibility:hidden;pointer-events:none}
#focus-app #fx-card .fp-slot.is-answer .fp-slot-value{color:#16634b;text-decoration:underline;text-decoration-color:#368c6c;text-decoration-thickness:2px;text-underline-offset:4px}
.fx-browse-kinds.fx-preview-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 8px;padding:0}
.fx-browse-kinds.fx-preview-levels>button{min-height:46px;white-space:normal;font-size:13px;line-height:1.4;font-weight:600;padding:10px 8px;border:1px solid var(--fx-line,#d8e2dd);border-radius:10px;background:var(--fx-surface,#fff);color:var(--fx-text,#193b32);box-shadow:0 1px 2px #173f2910}
.fx-browse-kinds.fx-preview-levels>button.is-selected{background:#e5f0e9;border-color:#43816b;color:#124e39;box-shadow:inset 0 0 0 1px #43816b}
.fx-browse-kinds[aria-label="학습 내용 선택"]{flex-wrap:wrap;overflow:visible;gap:7px}
.fx-browse-kinds[aria-label="학습 내용 선택"]>button{min-height:44px;border:1px solid var(--fx-line,#d8e2dd);border-radius:9px;padding:8px 11px;white-space:normal;font-size:12px}
.fx-content-parts .fx-choice{min-height:46px}
#focus-app button[data-fx-subject],#focus-app button[data-fx-browse-subject]:not([data-fx-browse-subject="all"]):not([data-fx-browse-subject="scope"]),#focus-app button[data-fx-action="courseSubject"],#focus-app button[data-fx-action="diagnoseSubject"]{background:var(--subject-tint,#f5f6f3);border-color:var(--subject-edge,#d8e2dd);color:var(--fx-text,#203c34)}
#focus-app button[data-fx-subject][aria-pressed="true"],#focus-app button[data-fx-browse-subject]:not([data-fx-browse-subject="all"]):not([data-fx-browse-subject="scope"])[aria-pressed="true"],#focus-app button[data-fx-action="courseSubject"][aria-pressed="true"]{background:var(--subject-tint,#f5f6f3);border-color:var(--subject-edge,#d8e2dd);color:var(--fx-text,#203c34);box-shadow:inset 0 0 0 1px #577467;font-weight:700}
button[data-fx-subject="9정"],button[data-fx-browse-subject="9정"],button[data-subject="9정"][data-fx-action="courseSubject"],button[data-subject="9정"][data-fx-action="diagnoseSubject"]{--subject-tint:#edf5ef;--subject-edge:#cbded0}
button[data-fx-subject="12정"],button[data-fx-browse-subject="12정"],button[data-subject="12정"][data-fx-action="courseSubject"],button[data-subject="12정"][data-fx-action="diagnoseSubject"]{--subject-tint:#edf2f9;--subject-edge:#cdd9e9}
button[data-fx-subject="12인기"],button[data-fx-browse-subject="12인기"],button[data-subject="12인기"][data-fx-action="courseSubject"],button[data-subject="12인기"][data-fx-action="diagnoseSubject"]{--subject-tint:#f3eff8;--subject-edge:#dcd1e8}
button[data-fx-subject="12데과"],button[data-fx-browse-subject="12데과"],button[data-subject="12데과"][data-fx-action="courseSubject"],button[data-subject="12데과"][data-fx-action="diagnoseSubject"]{--subject-tint:#f9f3e8;--subject-edge:#e8dcc4}
button[data-fx-subject="12소생"],button[data-fx-browse-subject="12소생"],button[data-subject="12소생"][data-fx-action="courseSubject"],button[data-subject="12소생"][data-fx-action="diagnoseSubject"]{--subject-tint:#faefec;--subject-edge:#e9d3cc}
button[data-fx-subject="12정과"],button[data-fx-browse-subject="12정과"],button[data-subject="12정과"][data-fx-action="courseSubject"],button[data-subject="12정과"][data-fx-action="diagnoseSubject"]{--subject-tint:#edf5f5;--subject-edge:#cce0df}
@media(max-width:380px){.fx-browse-kinds.fx-preview-levels{grid-template-columns:repeat(2,minmax(0,1fr))}}
button[data-fx-action="diagnoseSubject"]{background:var(--subject-tint,#f5f6f3);border-color:var(--subject-edge,#d8e2dd);color:var(--fx-text,#203c34)}
