/* Calm overview and distraction-free study, revision 3. */
body{background:#f3f6f8}.page{max-width:1040px}.welcome{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:8px 0 28px}.welcome h1{margin:9px 0;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.055em;line-height:1.05}.welcome p{color:var(--muted);margin:0;line-height:1.55}.daily-pill{flex:none;border:1px solid var(--line);border-radius:20px;background:#fff;padding:17px 22px;display:grid;gap:5px}.daily-pill b{font-size:1.2rem}.daily-pill span{font-size:.75rem;color:var(--muted)}
.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.subject-card{min-width:0;display:block;background:#fff;border:1px solid #dbe5eb;border-radius:27px;overflow:hidden;box-shadow:0 8px 25px #173c5010;transition:transform .18s,border-color .18s}.subject-card:hover{transform:translateY(-3px);border-color:#80bac7}.subject-art{height:190px;position:relative;display:grid;place-items:center;background:linear-gradient(135deg,#e4efee,#d2e1dc);overflow:hidden}.subject-art img{height:142px;max-width:70%;object-fit:contain;filter:drop-shadow(0 12px 10px #13303c25)}.subject-number{position:absolute;top:20px;left:22px;font-size:.78rem;color:#657f83;font-weight:800}.parts-subject .subject-art{background:linear-gradient(130deg,#102b43,#184a5b);color:#b2f8f5}.parts-subject .subject-number{color:#8cbec8}.parts-symbol{font-size:4.5rem;letter-spacing:-.1em;font-weight:850}.parts-symbol>span{display:inline-block;padding:0 22px;color:#42d7d9;font-weight:450}.subject-copy{padding:25px}.subject-copy>small{font-size:.65rem;color:var(--cyan-dark);font-weight:850;letter-spacing:.09em}.subject-copy h2{margin:8px 0 9px;font-size:1.7rem;letter-spacing:-.04em}.subject-copy p{margin:0;color:var(--muted);font-size:.91rem;line-height:1.6}.subject-copy strong{display:flex;justify-content:space-between;margin-top:23px;color:var(--cyan-dark);font-size:.88rem}.continue-strip{display:flex;align-items:center;gap:16px;background:#e9f2f2;border:1px solid #d3e5e6;border-radius:19px;margin:22px 0 16px;padding:19px}.continue-strip>span:nth-child(2){flex:1;min-width:0}.continue-strip b,.continue-strip small{display:block}.continue-strip b{font-size:.9rem}.continue-strip small{margin-top:5px;color:var(--muted);font-size:.78rem}.continue-icon{font-size:1.6rem;color:var(--cyan-dark)}
.home-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 0 22px}.home-shortcuts a{border:1px solid var(--line);background:#fff;border-radius:18px;padding:17px;display:grid;grid-template-columns:33px 1fr;gap:5px 10px}.home-shortcuts a>span{grid-row:1/3;font-size:1.5rem;color:var(--cyan-dark)}.home-shortcuts b{font-size:.88rem}.home-shortcuts small{font-size:.72rem;color:var(--muted)}
.quiet-details{border:1px solid var(--line);border-radius:19px;background:#fff;margin:20px 0;overflow:hidden}.quiet-details>summary{cursor:pointer;padding:20px 22px;list-style:none;font-weight:800;position:relative;padding-right:52px;font-size:.94rem}.quiet-details>summary::-webkit-details-marker{display:none}.quiet-details>summary:after{content:'+';position:absolute;right:22px;top:18px;font-size:1.4rem;font-weight:500;color:var(--cyan-dark)}.quiet-details[open]>summary:after{content:'−'}.quiet-details>summary small{display:block;font-weight:500;font-size:.76rem;color:var(--muted);margin-top:5px;line-height:1.5}.quiet-details-body{padding:0 20px 20px}.quiet-details-body>p{color:var(--muted);line-height:1.7;font-size:.9rem}.quiet-details .music-card{margin-bottom:0}.quiet-details .mode-card{box-shadow:none}.back-link{display:block;color:var(--muted);font-size:.8rem;margin-bottom:20px}.calm-page-head h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.1;margin:10px 0}.calm-page-head p{font-size:.96rem}.training-settings{padding:20px;background:#eaf0f3;border-radius:22px;margin-bottom:26px}.setting-caption{display:block;margin:0 0 14px;font-size:.78rem;font-weight:850;letter-spacing:.045em;color:#486372}.training-settings .filter-bar{padding-bottom:16px}.compact-settings{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #d4e0e6;padding-top:15px}.compact-settings label{display:flex;align-items:center;gap:10px;font-size:.8rem;font-weight:750}.compact-settings select{font:inherit;background:#fff;color:var(--ink);border:1px solid #cbdce4;border-radius:11px;padding:9px;min-height:44px}.compact-settings summary{font-size:.77rem;color:var(--muted);cursor:pointer}.compact-settings details label{margin-top:10px}.core-modes .mode-card{box-shadow:0 4px 18px #16334908;min-height:215px}.core-modes .mode-card:first-child{border-color:#79c9cf;background:#f7fdfd}.core-modes .mode-card p{font-size:.87rem}.core-modes .mode-card h3{font-size:1.15rem}.library-shortcuts{display:flex;gap:20px;flex-wrap:wrap;font-size:.83rem;font-weight:750;color:var(--cyan-dark);padding:5px 3px 16px}
.guided-feature{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:30px;background:linear-gradient(120deg,#0b243a,#164252);border-radius:26px;padding:32px;color:#fff;box-shadow:0 15px 32px #102b4516}.guided-symbol{font-size:3rem;font-weight:850;color:#7fe7e5;text-align:center;letter-spacing:-.07em}.guided-feature .eyebrow{color:#84dcd9}.guided-feature h2{font-size:1.65rem;letter-spacing:-.035em;margin:10px 0}.guided-feature p{font-size:.94rem;line-height:1.7;color:#c0d4df}.route-steps{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0;font-size:.75rem;color:#a9d5df}.route-steps span{border:1px solid #ffffff25;border-radius:30px;padding:7px 10px}.secondary-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.quiet-tool{text-align:left;display:grid;grid-template-columns:40px 1fr;gap:4px 10px;border:1px solid var(--line);background:#fff;border-radius:18px;padding:19px;color:var(--ink)}.quiet-tool>span{grid-row:1/3;font-size:1.6rem;color:var(--cyan-dark)}.quiet-tool>b{font-size:.86rem}.quiet-tool>small{font-size:.73rem;color:var(--muted)}
.study-focus .topbar,.study-focus .nav{display:none!important}.study-focus .shell{display:block;width:100%;max-width:none;padding:calc(16px + var(--safe-top)) 22px calc(24px + var(--safe-bottom));min-height:100dvh}.study-focus .training-shell{max-width:850px}.study-focus .training-top{position:sticky;top:0;z-index:10;background:#f3f6f8f5;padding:8px 0;backdrop-filter:blur(12px)}.study-focus .question-card{box-shadow:0 10px 35px #0923330c}.study-focus .question-visual{height:clamp(165px,30svh,280px)}.study-focus .question-visual img{max-height:100%}.study-focus .question-card h1{font-size:clamp(1.4rem,3vw,2rem)}.study-focus .training-top>button{flex:none}.study-focus .source-note{font-size:.74rem}
.written-label{display:block;font-weight:800;font-size:.87rem;margin-bottom:9px}.written-input{width:100%;min-height:55px;border:2px solid #ccdde3;border-radius:14px;padding:12px 15px;font:inherit;font-size:1rem;background:#fbfdfe;color:var(--ink)}.written-input:focus{outline:3px solid #1fcfd540;border-color:var(--cyan-dark)}.written-hint{color:var(--muted);font-size:.8rem;line-height:1.6;margin:10px 0 15px}.written-submit{width:100%;margin-top:5px}.written-comparison{display:grid;gap:12px}.written-comparison>div{border-radius:16px;padding:17px;background:#f0f4f6;overflow-wrap:anywhere}.written-comparison small{font-size:.64rem;letter-spacing:.09em;font-weight:850;color:var(--muted)}.written-comparison p{margin:8px 0 0;line-height:1.6}.written-comparison .official-answer{background:#e7f6f3;border:1px solid #b4ddd7}.official-answer h2{font-size:1.25rem;margin:8px 0}.official-answer p{font-size:.83rem;color:#365c57}.written-prompt{font-size:.87rem;line-height:1.65;color:var(--muted)}.self-grade{display:flex;gap:10px}.self-grade button{flex:1;min-width:0}.self-grade button:disabled{opacity:.48;cursor:default}.written-grade-note{font-size:.8rem;color:var(--cyan-dark)}.written-review{text-align:left;display:grid;gap:0;margin:24px 0}.written-review-row{display:flex;align-items:start;gap:13px;padding:15px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.written-review-row>span{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.marked-good{background:#d9f1e8;color:#18764f}.marked-repeat{background:#fff0d5;color:#a3680f}.written-review-row>div{min-width:0}.written-review-row b{font-size:.9rem}.written-review-row small{display:block;margin-top:6px;color:var(--muted);font-size:.8rem}
#lessonDialog,#c8Dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:#f3f6f8}#lessonDialog .modal-card,#c8Dialog .modal-card{width:min(920px,100%);margin:0 auto;background:#fff;min-height:100%;border-radius:0;padding:24px clamp(18px,4vw,42px) calc(30px + var(--safe-bottom))}#lessonDialog .modal-head,#c8Dialog .modal-head{position:sticky;top:-24px;padding:14px 0;background:#fff;z-index:5;border-bottom:1px solid var(--line)}#lessonDialog .modal-head .close,#c8Dialog .modal-head .close{min-width:44px;min-height:44px}
@media(max-width:950px){.nav{grid-template-columns:repeat(4,minmax(0,1fr));max-width:530px}.nav a b{font-size:.68rem}.shell{padding-bottom:calc(100px + var(--safe-bottom))}}
@media(max-width:620px){.shell{padding-inline:16px}.welcome{margin:4px 0 19px;gap:10px;align-items:start}.welcome h1{font-size:1.95rem}.welcome .eyebrow{font-size:.58rem}.welcome p{font-size:.83rem;max-width:220px}.daily-pill{padding:12px 11px;border-radius:15px;min-width:68px;text-align:center}.daily-pill b{font-size:.95rem}.daily-pill span{font-size:.62rem}.subject-grid{grid-template-columns:1fr;gap:13px}.subject-card{display:grid;grid-template-columns:91px minmax(0,1fr);border-radius:22px;min-height:175px}.subject-art{height:100%;min-height:175px}.subject-art img{height:108px;max-width:80%;max-height:135px}.subject-number{top:13px;left:15px;font-size:.65rem}.parts-symbol{font-size:2.7rem;display:flex;flex-direction:column;align-items:center;letter-spacing:-.06em;line-height:.8}.parts-symbol>span{padding:7px 0;font-size:1.6rem;transform:rotate(90deg)}.subject-copy{padding:20px 16px}.subject-copy>small{font-size:.56rem;letter-spacing:.03em}.subject-copy h2{font-size:1.35rem;line-height:1.1;margin:9px 0}.subject-copy p{font-size:.79rem;line-height:1.5}.subject-copy strong{font-size:.75rem;margin-top:15px}.continue-strip{padding:15px;margin-top:16px;gap:12px}.continue-strip b{font-size:.79rem}.continue-strip small{font-size:.7rem}.home-shortcuts{gap:10px}.home-shortcuts a{grid-template-columns:23px minmax(0,1fr);gap:4px 7px;padding:14px 11px}.home-shortcuts a>span{font-size:1.2rem}.home-shortcuts b{font-size:.75rem}.home-shortcuts small{font-size:.64rem}.quiet-details>summary{padding:17px 42px 17px 16px;font-size:.83rem}.quiet-details>summary:after{right:16px;top:13px}.quiet-details-body{padding:0 13px 15px}.quiet-details>summary small{font-size:.68rem}.training-settings{padding:16px;margin-bottom:22px}.compact-settings{gap:8px;align-items:start}.compact-settings summary{font-size:.67rem;line-height:1.5}.compact-settings label{font-size:.76rem;gap:7px}.compact-settings details{max-width:130px}.core-modes{grid-template-columns:1fr;gap:11px}.core-modes .mode-card{display:grid;grid-template-columns:45px minmax(0,1fr);column-gap:14px;min-height:0;padding:17px}.core-modes .mode-icon{grid-row:1/4;width:44px;height:44px}.core-modes .mode-card h3{margin:0 0 5px;font-size:1rem}.core-modes .mode-card p{font-size:.78rem;line-height:1.5}.core-modes .mode-card strong{margin-top:8px;font-size:.73rem}.library-shortcuts{gap:15px;font-size:.76rem}.guided-feature{grid-template-columns:1fr;padding:24px;gap:4px}.guided-symbol{display:none}.guided-feature h2{font-size:1.6rem}.guided-feature p{font-size:.86rem}.guided-feature .primary{width:100%;font-size:.85rem}.secondary-tools{gap:10px}.quiet-tool{display:block;padding:16px 12px}.quiet-tool span{float:right;font-size:1.25rem}.quiet-tool b,.quiet-tool small{display:block}.quiet-tool b{font-size:.8rem}.quiet-tool small{font-size:.68rem;margin-top:5px}.study-focus .shell{padding:calc(6px + var(--safe-top)) 12px calc(16px + var(--safe-bottom))}.study-focus .question-card{border-radius:23px;padding:18px 15px}.study-focus .question-visual{height:clamp(140px,25svh,215px);padding:17px}.study-focus .training-top{margin-bottom:8px}.study-focus .question-card h1{margin:13px 0 16px}.written-input{min-height:51px}.written-comparison>div{padding:14px}.written-review-row b{font-size:.84rem}.self-grade button{font-size:.83rem;padding-inline:10px}#lessonDialog .modal-head,#c8Dialog .modal-head{top:-24px}#lessonDialog .modal-head h2,#c8Dialog .modal-head h2{font-size:1.35rem}}
.study-focus .question-visual{overflow:hidden}.study-focus .question-visual>img{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}
.battle-format-note{font-size:.78rem;line-height:1.6;color:var(--muted);padding:12px;border-radius:12px;background:#f0f5f7}.battle-player .battle-score{min-width:3ch;text-align:right;flex:0 0 auto;white-space:nowrap}
@media(max-width:620px){.calm-page-head{margin-bottom:17px}.calm-page-head .back-link{margin-bottom:13px}.calm-page-head h1{font-size:1.85rem}.calm-page-head p{font-size:.86rem;line-height:1.45}.training-settings{padding:14px;margin-bottom:18px}.compact-settings{padding-top:10px}.core-modes .mode-card{padding:14px;column-gap:12px}.core-modes .mode-card strong{display:none}.core-modes .mode-card h3:after{content:'→';float:right;margin-left:8px;color:var(--cyan-dark)}.core-modes .mode-icon{grid-row:1/3}}
@media(prefers-reduced-motion:reduce){.subject-card{transition:none}.subject-card:hover{transform:none}}

/* A complete study turn fits ordinary phone viewports; long content and zoom may scroll. */
.study-focus .question-visual:has(.word-card){height:auto;min-height:clamp(110px,22dvh,220px);overflow:visible}
.study-focus .question-visual .word-card{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:620px){
  .study-focus .shell{padding:calc(4px + var(--safe-top)) 12px calc(10px + var(--safe-bottom))}
  .study-focus .training-top{padding:4px 0;gap:10px;margin-bottom:6px}
  .study-focus .training-top>button{min-height:44px;min-width:44px}
  .study-focus .question-card{padding:14px;border-radius:21px}
  .study-focus .question-meta{gap:8px}
  .study-focus .question-meta span{font-size:.66rem;line-height:1.4;letter-spacing:.065em}
  .study-focus .question-card h1{font-size:1.4rem;line-height:1.15;margin:9px 0 12px}
  .study-focus .question-visual{height:clamp(120px,23dvh,185px);padding:13px;margin-bottom:12px;border-radius:18px}
  .study-focus .question-visual .word-card{font-size:clamp(1.3rem,5.5vw,1.8rem);line-height:1.2}
  .study-focus .answers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .study-focus .answer{min-width:0;min-height:58px;padding:10px 9px;gap:7px;border-radius:13px;font-size:.84rem;line-height:1.35;overflow-wrap:anywhere}
  .study-focus .answer>span:not(.letter){min-width:0}
  .study-focus .answer .letter{width:23px;height:26px;border-radius:7px;font-size:.68rem}
  .study-focus .answer.image-answer{min-height:104px;padding:9px}
  .study-focus .answer.image-answer img{max-height:82px;max-width:100%}
  .study-focus .question-card:has(#feedbackSlot:not(:empty)) .question-visual{height:clamp(95px,18dvh,145px)}
  .study-focus .question-card:has(#feedbackSlot:not(:empty)) .question-visual:has(.word-card){height:auto;min-height:95px}
  .study-focus .feedback{margin-top:10px;padding:11px 12px;border-radius:13px;font-size:.85rem;line-height:1.45}
  .study-focus .feedback>small:first-child{font-size:.68rem;line-height:1.4}
  .study-focus .question-visual .no-mark{min-height:0;height:100%;padding:8px;font-size:.78rem;border-radius:12px}
  .study-focus .next-button{min-height:46px;margin-top:9px}
  .study-focus .source-note{margin:10px 0 0;padding:9px 11px;font-size:.72rem;line-height:1.45}
  .study-focus .written-input{min-height:48px;padding:10px 12px;font-size:1rem}
  .study-focus .written-label{font-size:.82rem;margin-bottom:6px}
  .study-focus .written-hint{font-size:.76rem;line-height:1.45;margin:8px 0 10px}
  .study-focus #writtenValidation:empty{margin:0}
  .study-focus .written-submit{min-height:46px;margin-top:4px}
  .study-focus .written-test:has(.written-comparison) .question-visual{height:clamp(88px,15dvh,122px);padding:8px;margin-bottom:10px}
  .study-focus .written-comparison{gap:8px}
  .study-focus .written-comparison>div{padding:10px 12px;border-radius:12px}
  .study-focus .written-comparison small{font-size:.62rem;line-height:1.3}
  .study-focus .written-comparison p{margin:4px 0 0;font-size:.84rem;line-height:1.4}
  .study-focus .official-answer h2{font-size:1.1rem;line-height:1.2;margin:4px 0}
  .study-focus .official-answer p{font-size:.78rem}
  .study-focus .written-prompt{font-size:.78rem;line-height:1.45;margin:10px 0}
  .study-focus .self-grade{gap:8px}
  .study-focus .self-grade button{min-height:44px;font-size:.8rem;padding:8px}
  .study-focus .written-grade-note{font-size:.75rem;line-height:1.4;margin:9px 0}
  .study-focus .training-shell:has(.flash-card) .page-head{margin:8px 0 13px}
  .study-focus .training-shell:has(.flash-card) .eyebrow{font-size:.64rem}
  .study-focus .training-shell:has(.flash-card) .page-head h1{font-size:1.65rem;line-height:1.1;margin:7px 0}
  .study-focus .training-shell:has(.flash-card) .page-head p{font-size:.84rem;line-height:1.45}
  .study-focus .flash-card{min-height:0;gap:14px;padding:18px 16px;border-radius:21px}
  .study-focus .flash-front,.study-focus .flash-back{gap:9px}
  .study-focus .flash-card img{max-height:clamp(125px,27dvh,205px);max-width:min(250px,92%)}
  .study-focus .flash-card:has(.flash-back) img{max-height:clamp(100px,21dvh,160px)}
  .study-focus .flash-card h2{font-size:1.3rem;line-height:1.2}
  .study-focus .flash-card p{font-size:.85rem;line-height:1.45}
  .study-focus .flash-card small{font-size:.76rem;line-height:1.45}
  .study-focus .flash-actions{flex-wrap:nowrap;gap:9px;margin-top:12px}
  .study-focus .flash-actions>*{min-width:0;min-height:46px;flex:1 1 0;padding:9px;font-size:.82rem}
  .study-focus .training-top:has([data-leave-battle]){flex-wrap:nowrap;justify-content:space-between}
  .study-focus .training-top [data-leave-battle]{font-size:.75rem;padding:9px;white-space:normal}
  .study-focus .training-top:has([data-leave-battle])>b{font-size:.78rem;line-height:1.3;text-align:right}
  .study-focus .training-shell:has([data-battle-answer]) .detail-note{font-size:.76rem;line-height:1.45;margin:10px 0}
  .study-focus .training-shell:has([data-battle-answer]) .battle-players{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 0}
  .study-focus .training-shell:has([data-battle-answer]) .battle-player{gap:8px;padding:9px 10px;border-radius:12px;font-size:.76rem}
  .study-focus .training-shell:has([data-battle-answer]) .battle-player small{font-size:.66rem;line-height:1.35}
}
.calm-home .subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.calm-home .subject-copy h2{margin-top:0}.calm-home .subject-copy{padding:22px}.calm-home .home-shortcuts{margin-top:20px}.cbrn-subject .subject-art{background:linear-gradient(135deg,#e7edd9,#c4d5ae)}.cbrn-symbol{font-size:3.4rem;font-weight:850;line-height:1.12;letter-spacing:.08em;color:#355240}.study-focus .shell:has(.cbrn-study-host){padding:0}.cbrn-study-host{padding:0;min-width:0}
@media(max-width:760px){.calm-home .subject-grid{grid-template-columns:1fr;gap:12px}.calm-home .subject-card{display:grid;grid-template-columns:80px minmax(0,1fr);min-height:130px;border-radius:20px}.calm-home .subject-art{height:100%;min-height:130px}.calm-home .subject-art img{height:82px;max-width:75%}.calm-home .subject-number{top:10px;left:12px;font-size:.6rem}.calm-home .subject-copy{padding:16px}.calm-home .subject-copy h2{font-size:1.35rem;margin:0 0 6px}.calm-home .subject-copy p{font-size:.79rem;line-height:1.4}.calm-home .subject-copy strong{font-size:.75rem;margin-top:10px}.calm-home .parts-symbol{font-size:2.4rem;display:flex;flex-direction:column;align-items:center;line-height:.8}.calm-home .parts-symbol>span{padding:6px 0;transform:rotate(90deg);font-size:1.4rem}.calm-home .cbrn-symbol{font-size:1.8rem}.calm-home .welcome h1{font-size:1.8rem}.calm-home .welcome p{display:none}.calm-home .welcome{margin-bottom:16px}.calm-home .home-shortcuts{margin-top:16px}}
.context-filter{display:flex;align-items:center;gap:14px;margin:8px 0 12px;padding-left:12px;border-left:3px solid var(--cyan-dark)}
.context-filter>span{font-size:.76rem;font-weight:700;color:var(--muted)}
.context-filter .filter-bar{margin:0;gap:7px}
.context-filter .filter-chip{padding:8px 13px;font-size:.82rem}
.context-guide{margin:12px 0}
.colt-video-list{display:grid;gap:10px}.colt-video-choice{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;width:100%;min-width:0;font:inherit}.colt-video-choice>span:first-child{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:#e6f4f4;color:var(--cyan-dark)}.colt-video-choice>span:last-child{min-width:0}.colt-video-choice b,.colt-video-choice small{display:block;overflow-wrap:anywhere}.colt-video-choice b{font-size:.88rem;line-height:1.4}.colt-video-choice small{margin-top:5px;font-size:.74rem;color:var(--muted)}#coltVideoDialog .modal-head h2{font-size:1.2rem;overflow-wrap:anywhere}#coltVideoDialog .music-frame{min-height:225px}#coltVideoDialog .external-content-gate{min-height:225px}
#main:focus{outline:none;box-shadow:none}
body.study-focus:has(.cbrn-study-host){overflow-x:clip}
#coltVideoDialog .music-frame:has(.external-content-gate){aspect-ratio:auto;overflow:visible;min-height:0}#coltVideoDialog .music-frame:has(.external-content-gate) .external-embed-consent{aspect-ratio:auto;min-height:0}#coltVideoDialog .music-frame .external-content-gate{position:relative;min-height:0}#coltVideoDialog .music-frame:has(.external-embed-consent.is-loaded){aspect-ratio:16/9;min-height:0}#coltVideoDialog .music-frame iframe{width:100%;height:100%;border:0}
.context-select{display:grid;gap:7px;font-size:.78rem;font-weight:750;color:var(--muted);margin:12px 0}
.context-select select{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card,#fff);color:var(--ink);font:inherit;font-size:.92rem}
.context-hint{color:var(--muted);font-size:.85rem;line-height:1.5;margin:10px 0 16px}
.rank-variants{display:grid;gap:8px;margin:16px 0}
.rank-variants>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.rank-variants dt{color:var(--muted)}
.rank-variants dd{margin:0;font-weight:750}
.context-guide .quiet-details-body{font-size:.88rem;line-height:1.6}
.written-fields{display:grid;gap:12px}.written-fields .written-label{margin:0}.written-fields input{display:block;margin-top:6px}
.written-duo .written-comparison{display:grid;gap:10px}.written-model-pairs{padding:13px 15px;border-radius:14px;background:#e7f6f3;border:1px solid #b4ddd7}.written-model-pairs h2{font-size:1rem;margin:0 0 9px}.written-pair-labels,.written-pair{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;text-align:left}.written-pair-labels{font-size:.68rem;color:#365c57;margin-bottom:5px}.written-pair{padding:6px 0;font-size:.94rem;line-height:1.35;overflow-wrap:anywhere}.written-pair+.written-pair{border-top:1px solid #b4ddd7}.written-model-pairs .written-shared{font-size:.76rem;line-height:1.35;margin:7px 0 0;color:#365c57}
.written-self-check{display:grid;grid-template-columns:1fr 1fr;gap:10px}.written-self-field{min-width:0;border:1px solid var(--line);border-radius:13px;padding:11px}.written-self-field h3{font-size:.76rem;margin:0;color:var(--muted)}.written-self-field .written-own{font-size:.86rem;line-height:1.4;margin:6px 0 10px;overflow-wrap:anywhere}.written-self-field .self-grade{gap:5px}.written-self-field .self-grade button{min-height:44px;padding:7px 4px;font-size:.74rem;line-height:1.2}.written-self-field .self-grade [aria-pressed=true]{outline:2px solid var(--cyan-dark);outline-offset:1px}.written-duo .written-submit:disabled{opacity:.5;cursor:not-allowed}.written-explanation{font-size:.78rem;line-height:1.45;margin-top:12px;color:var(--muted)}.written-explanation summary{cursor:pointer;font-weight:750}.written-explanation p{margin:8px 0 0}.written-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0}.written-score-grid>div{border-radius:14px;padding:14px 8px;background:#e7f6f3;display:grid;gap:7px}.written-score-grid b{font-size:1.2rem}.written-score-grid span{font-size:.72rem;color:var(--muted)}
@media(max-width:620px){.study-focus .written-duo .question-visual{height:clamp(112px,22dvh,170px)}.study-focus .written-duo:has(.written-comparison) .question-visual{height:85px;padding:7px;margin-bottom:8px}.study-focus .written-duo .written-fields{gap:10px}.study-focus .written-duo .written-comparison{gap:8px}.study-focus .written-model-pairs{padding:10px 12px}.study-focus .written-model-pairs h2{font-size:.85rem;margin:0 0 6px}.study-focus .written-pair{font-size:.82rem;gap:10px;line-height:1.3;padding:4px 0}.study-focus .written-pair-labels{font-size:.64rem;gap:10px}.study-focus .written-self-check{gap:8px}.study-focus .written-self-field{padding:9px}.study-focus .written-self-field .written-own{font-size:.78rem;line-height:1.35;margin:5px 0 8px}.study-focus .written-self-field h3{font-size:.68rem}.study-focus .written-duo .written-prompt{font-size:.72rem;line-height:1.35;margin:8px 0}.study-focus .written-duo .written-explanation{font-size:.72rem;margin-top:8px}}
@media(max-width:400px){.context-filter{gap:8px;padding-left:8px}.context-filter>span{font-size:.7rem}.context-filter .filter-chip{padding:8px 10px}}
@media(max-width:620px) and (max-height:700px){
  .study-focus .question-visual{height:clamp(108px,20dvh,140px)}
  .study-focus .question-card:has(#feedbackSlot:not(:empty)) .question-visual{height:98px;padding:9px}
  .study-focus .question-card h1{margin:7px 0 10px;font-size:1.3rem}
  .study-focus .question-card{padding:12px}
  .study-focus .written-test:has(.written-comparison) .question-visual{height:86px}
  .study-focus .training-shell:has(.flash-card) .page-head{margin:4px 0 10px}
  .study-focus .training-shell:has(.flash-card) .page-head h1{font-size:1.45rem}
  .study-focus .flash-card{gap:11px;padding:14px}
}

/* Read the insignia together with its branch or unit, outside the image. */
.rank-context-label{display:block;min-width:0;margin:0 0 12px;padding:8px 12px;border:1px solid #c8dedc;border-radius:11px;background:#eaf5f3;color:#14575d;font-size:.9rem;font-weight:800;line-height:1.35;letter-spacing:0;text-align:center;text-transform:none;overflow-wrap:break-word;text-wrap:pretty}
.question-visual:has(+.rank-context-label){margin-bottom:7px}
.study-focus .flash-card .rank-context-label{width:100%;margin:0;font-size:.9rem;line-height:1.35;color:#14575d}
.written-navigation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px;margin-top:10px}
.written-navigation>button{min-width:0;min-height:46px;padding:10px 12px;font-size:.86rem;line-height:1.3;white-space:normal}
.written-navigation .written-submit{width:100%;margin-top:0}
@media(min-width:621px){
  .study-focus .written-duo:has(.rank-context-label):has(.written-comparison) .question-visual{height:clamp(110px,18dvh,180px);padding:12px}
}
@media(max-width:620px){
  .study-focus .rank-context-label{margin-bottom:10px;padding:6px 10px;font-size:.88rem;line-height:1.3;border-radius:10px}
  .study-focus .question-card:has(>.rank-context-label) .question-visual:not(:has(.word-card)){height:clamp(108px,20dvh,156px);padding:10px;margin-bottom:6px}
  .study-focus .question-card:has(>.rank-context-label):has(#feedbackSlot:not(:empty)) .question-visual:not(:has(.word-card)){height:clamp(86px,15dvh,118px);padding:8px}
  .study-focus .written-duo:has(.rank-context-label) .question-visual:not(:has(.word-card)){height:clamp(96px,17dvh,134px)}
  .study-focus .written-duo:has(.rank-context-label):has(.written-comparison) .question-visual:not(:has(.word-card)){height:74px;padding:6px;margin-bottom:6px}
  .study-focus .flash-card:has(.rank-context-label) img{max-height:clamp(110px,23dvh,178px)}
  .study-focus .flash-card:has(.rank-context-label):has(.flash-back) img{max-height:clamp(90px,17dvh,138px)}
  .study-focus .flash-card .rank-context-label{font-size:.88rem;line-height:1.3;padding:6px 10px;margin:0}
  .study-focus .written-navigation{gap:8px;margin-top:8px}
  .study-focus .written-navigation>button{font-size:.82rem;padding:9px 10px}
}
@media(max-width:620px) and (max-height:700px){
  .study-focus .question-card:has(>.rank-context-label) .question-visual:not(:has(.word-card)){height:108px}
  .study-focus .question-card:has(>.rank-context-label):has(#feedbackSlot:not(:empty)) .question-visual:not(:has(.word-card)){height:84px}
  .study-focus .written-duo:has(.rank-context-label) .question-visual:not(:has(.word-card)){height:96px}
  .study-focus .written-duo:has(.rank-context-label):has(.written-comparison) .question-visual:not(:has(.word-card)){height:70px}
}

/* Choose a service and unit, then read its complete, clearly separated rank list. */
.rank-library-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:22px 0 24px}
.rank-library-card{--library-accent:#17666e;display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;min-height:150px;padding:23px;border:1px solid #d5e2e7;border-left:3px solid var(--library-accent);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 5px 19px #12324806}
.rank-library-card[data-library-choice="landmacht"]{--library-accent:#60723f}
.rank-library-card[data-library-choice="marine"]{--library-accent:#214e74}
.rank-library-card[data-library-choice="luchtmacht"]{--library-accent:#318ba3}
.rank-library-card[data-library-choice="kmar"]{--library-accent:#24496c}
.rank-library-card-copy{display:grid;gap:8px;min-width:0}
.rank-library-card-copy>b{font-size:1rem;line-height:1.35;font-weight:800;letter-spacing:-.015em;overflow-wrap:break-word}
.rank-library-card-copy>span{font-size:.85rem;line-height:1.5;color:var(--muted)}
.rank-library-card-copy>small{font-size:.73rem;line-height:1.4;font-weight:750;color:var(--library-accent)}
.rank-library-arrow{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:10px;background:#eaf3f3;color:#17666e;font-size:1.05rem;font-weight:700}
.rank-library-back{display:flex;align-items:center;width:fit-content;max-width:100%;min-height:44px;margin:0 0 7px;color:#17666e;font-size:.82rem;font-weight:750;line-height:1.4;text-decoration:none}
.rank-library-subgroups{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rank-library-subgroups .rank-library-card{min-height:94px;padding:16px;gap:10px;border-left-width:1px;border-radius:15px}
.rank-library-subgroups .rank-library-card-copy{gap:6px}
.rank-library-subgroups .rank-library-card-copy>b{font-size:.91rem}
.rank-library-subgroups .rank-library-card-copy>span{display:none}
.rank-library-subgroups .rank-library-arrow{flex-basis:25px;width:25px;height:25px;border-radius:8px;font-size:.92rem}
.rank-library-levels{display:grid;gap:12px;margin:18px 0 22px}
.rank-library:has(.rank-library-levels){max-width:820px}
.rank-library-section{min-width:0;border:1px solid #d5e2e7;border-radius:17px;background:#fff}
.rank-library-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-radius:16px 16px 0 0;background:#edf4f5}
.rank-library-section-head h2{margin:0;font-size:.98rem;font-weight:800;line-height:1.4;letter-spacing:-.01em}
.rank-library-section-head>small{flex:none;color:#58717a;font-size:.75rem;font-weight:650;white-space:nowrap}
.rank-library-section>.rank-library-list{grid-template-columns:minmax(0,1fr);gap:0;padding:0}
.rank-library-list .rank-card{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:16px;width:100%;min-width:0;min-height:102px;padding:12px 16px;border:0;border-top:1px solid #dce6e9;border-radius:0;box-shadow:none;background:#fff;transform:none}
.rank-library-list .rank-card:last-child{border-radius:0 0 16px 16px}
.rank-library-list .rank-card:hover{transform:none;background:#f7fbfa}
.rank-library-list .rank-image{width:72px;height:78px;padding:6px;border-radius:11px;background:#edf3ef}
.rank-library-list .rank-image img{max-width:100%;max-height:66px;object-fit:contain;filter:none}
.rank-library-list .rank-copy{min-width:0;padding:0}
.rank-library-list .rank-copy b{margin:0;font-size:.95rem;line-height:1.4;overflow-wrap:break-word}
.rank-library-list .rank-copy>span{margin-top:5px;font-size:.82rem;line-height:1.45;overflow-wrap:break-word}
.rank-library-list .no-mark{width:60px;max-width:100%;min-width:0;height:60px;padding:4px;border-radius:9px;font-size:.6rem}
.rank-library .library-shortcuts{margin-top:20px}
@media(hover:hover){.rank-library-card:hover{border-color:#8ab7be;background:#f8fcfc}.rank-library-back:hover{text-decoration:underline;text-underline-offset:3px}}
@media(max-width:950px){.rank-library-subgroups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .rank-library-groups{grid-template-columns:minmax(0,1fr);gap:10px;margin:17px 0 20px}
  .rank-library-card{min-height:110px;padding:16px;gap:12px;border-radius:16px}
  .rank-library-card-copy{gap:5px}
  .rank-library-card-copy>b{font-size:.95rem;line-height:1.3}
  .rank-library-card-copy>span{font-size:.79rem;line-height:1.4}
  .rank-library-card-copy>small{font-size:.7rem}
  .rank-library-arrow{flex-basis:27px;width:27px;height:27px;border-radius:9px}
  .rank-library-back{font-size:.77rem;margin-bottom:7px}
  .rank-library-subgroups{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .rank-library-subgroups .rank-library-card{min-height:86px;padding:12px 10px;gap:7px;border-radius:13px}
  .rank-library-subgroups .rank-library-card-copy>b{font-size:.82rem;line-height:1.35}
  .rank-library-subgroups .rank-library-card-copy>small{font-size:.66rem}
  .rank-library-subgroups .rank-library-arrow{flex-basis:20px;width:20px;height:24px;font-size:.82rem}
  .rank-library-levels{gap:10px;margin:14px 0 18px}
  .rank-library-section-head{padding:14px 13px;gap:8px}
  .rank-library-section-head h2{font-size:.85rem}
  .rank-library-section-head>small{font-size:.68rem}
  .rank-library-list .rank-card{grid-template-columns:64px minmax(0,1fr);gap:12px;min-height:90px;padding:10px 12px}
  .rank-library-list .rank-image{width:64px;height:70px;padding:5px}
  .rank-library-list .rank-image img{max-height:60px}
  .rank-library-list .rank-copy b{font-size:.88rem}
  .rank-library-list .rank-copy>span{font-size:.76rem}
  .rank-library-list .no-mark{width:54px;height:54px;font-size:.56rem}
}
@media(max-width:340px){.rank-library-subgroups{grid-template-columns:minmax(0,1fr)}.rank-library-list .rank-card{grid-template-columns:56px minmax(0,1fr);gap:10px;padding:10px}.rank-library-list .rank-image{width:56px}.rank-library-section-head h2{font-size:.81rem}}
