@import url("title-font.css");
/* One lossless local mark for every execution surface. */
.official-mark{width:44px!important;height:44px!important;object-fit:contain;flex:0 0 44px;vertical-align:middle;display:inline-block;margin-right:12px;background:transparent;border-radius:0}
header h1,header #brand,header .brand{display:flex;align-items:center;min-width:0}
header h1{gap:0}header #brand{flex-wrap:wrap;row-gap:5px;text-decoration:none}header #brand span{margin-left:6px}
.brand-name{letter-spacing:-.4px!important}.brand .official-mark{margin-right:0}
@media(max-width:700px){.official-mark{width:34px!important;height:34px!important;flex-basis:34px;margin-right:8px}header h1{font-size:clamp(15px,4.3vw,21px)}header #brand{font-size:18px}header #brand .official-mark{margin-right:7px}.brand-sub{font-size:11px}}

/* Exact card title typography: home-cards.css .card h3 + body font stack. */
body[data-training-part] header h1{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;font-weight:700;letter-spacing:-.55px;line-height:1.3}

body[data-training-part] header h1{font-family:"Noto Sans KR",sans-serif;font-weight:700;letter-spacing:-.65px;font-size:24px;line-height:1.25;align-items:center;max-width:100%;min-width:0}
body[data-training-part] header{gap:10px}body[data-training-part] header h1 .official-mark{flex-shrink:0}
@media(max-width:700px){body[data-training-part] header h1{font-size:18px;letter-spacing:-.5px}body[data-training-part] header .tag{display:none}}
@media(max-width:360px){body[data-training-part] header h1{font-size:16px}}

/* Shared section heading, also available to future planned screens. */
header .menu-header-title{display:flex;align-items:center;gap:10px;color:#55e7bb;font-family:Arial,"Noto Sans KR",sans-serif;font-size:21px;font-weight:800;letter-spacing:.7px;line-height:1.3;min-width:0;text-decoration:none}
header .menu-header-title .menu-program-name{color:#55e7bb;font-size:21px;font-weight:800;white-space:nowrap}
header .menu-header-title .menu-section-title{color:#f2f6fc;font-size:16px;font-weight:800;letter-spacing:.7px;min-width:0;overflow-wrap:normal;word-break:keep-all}
body.home-root .menu-program-name,body.home-root .menu-section-title{display:none}
@media(max-width:700px){header .menu-header-title{gap:7px;flex-wrap:nowrap}header .menu-header-title .menu-program-name{font-size:17px}header .menu-header-title .menu-section-title{font-size:13px;letter-spacing:.2px}header .menu-header-title .official-mark{width:32px!important;height:32px!important;flex-basis:32px}}
@media(max-width:360px){header .menu-header-title{gap:5px}header .menu-header-title .menu-program-name{font-size:15px}header .menu-header-title .menu-section-title{font-size:12px}header .menu-header-title .official-mark{width:28px!important;height:28px!important;flex-basis:28px}}
#brand.menu-header-title .menu-program-name{color:#55e7bb;font-size:21px;font-weight:800}
#brand.menu-header-title .menu-section-title{color:#f2f6fc;font-size:16px;font-weight:800}
@media(max-width:700px){#brand.menu-header-title .menu-program-name{font-size:17px}#brand.menu-header-title .menu-section-title{font-size:13px}}
@media(max-width:360px){#brand.menu-header-title .menu-program-name{font-size:15px}#brand.menu-header-title .menu-section-title{font-size:12px}}

/* Visual keyboard hints only: no keyboard handler or answer letters are changed. */
@media(max-width:700px){
body button kbd,body[data-training-part] .toolbar>button kbd,body[data-training-part] .previewButtons button kbd,body[data-training-part] #questions button kbd,body[data-training-part] .controls button kbd{display:none!important}
body[data-training-part="1"] .choice>span,body[data-training-part="2"] .choice>span{display:none!important}
body .toolbar button,body .previewButtons button{column-gap:0}
body[data-training-part="5"] .questionCard .choice{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;padding-left:10px;padding-right:10px}
body[data-training-part="5"] .questionCard .choice>b{position:static;display:grid;place-items:center;align-self:center;justify-self:center;min-width:28px;min-height:32px;margin:0;padding:0 3px;line-height:1.2;text-align:center}
body[data-training-part="5"] .questionCard .choice .optionText{min-width:0;text-align:left;margin:0}
}
@media(max-width:700px){body[data-training-part="5"] .questionCard .choice>b{transform:none!important;top:auto;left:auto}body[data-training-part="5"] #questions .compactFour .choice{padding-left:12px!important;padding-right:12px!important}}
@media(max-width:700px){body[data-training-part="5"] .questionCard .choice{padding-left:14px}body[data-training-part="5"] #questions .compactFour .choice{padding-left:14px!important}}

/* Part 6 letters stay centered in their own column for single/multi-line choices. */
body[data-training-part="6"] #questions .choices .choice,body[data-part="6"] #questions .choices .choice{display:grid!important;grid-template-columns:24px minmax(0,1fr) 22px!important;align-items:center;gap:8px;padding-left:10px!important}
body[data-training-part="6"] #questions .choices .choice>b,body[data-part="6"] #questions .choices .choice>b{position:static!important;transform:none!important;grid-column:1;grid-row:1;align-self:center;justify-self:center;display:grid;place-items:center;width:24px;min-width:24px;margin:0!important;text-align:center}
body[data-training-part="6"] #questions .choices .optionText,body[data-part="6"] #questions .choices .optionText{grid-column:2;grid-row:1;min-width:0;white-space:normal!important;overflow-wrap:anywhere;order:initial!important}
body[data-training-part="6"] #questions .choices .choice kbd,body[data-part="6"] #questions .choices .choice kbd{position:static;grid-column:3;grid-row:1}
@media(max-width:790px){body[data-training-part="7"] #questions .choices:not(.vertical),body[data-part="7"] #questions .choices:not(.vertical){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-training-part="7"] #questions .compactFour .optionText,body[data-part="7"] #questions .compactFour .optionText{white-space:normal!important;overflow-wrap:anywhere!important}.documents,.documents>.passage{min-width:0;max-width:100%}}

.title-brand{color:#55e7bb}.title-context{color:#f2f6fc}
.screen-title-text{min-width:0;display:block;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
body[data-training-part] header h1{flex-wrap:nowrap}
.notebookTitle .title-brand{color:#55e7bb}.notebookTitle .title-context{color:#f2f6fc}
header #brand.menu-header-title{flex-wrap:nowrap;gap:10px}
header #brand.menu-header-title .official-mark{margin:0;flex-shrink:0}
header #brand.menu-header-title .menu-section-title{white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:700px){header #brand.menu-header-title{gap:6px}header #brand.menu-header-title .menu-program-name{flex-shrink:0}}
