/* The game board is intentionally a single classroom-facing vertical rail. */
@media(min-width:1100px){#gameView .game-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"map" "order" "side" "reveal"}#gameView .game-side{position:static;grid-area:side;width:100%}#gameView .mapcard{grid-area:map}#gameView .turn-order-line{grid-area:order}#gameView .round-reveal-stage{grid-area:reveal}#gameView.round-reveal-mode .game-layout{grid-template-areas:"reveal" "map" "order" "side"}}

/* Selection history is a card grid so the occupied block numbers scan at a glance. */
#inferenceSelectionOverview{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch}
#inferenceSelectionOverview .inference-selection-team{display:flex;flex-direction:column;min-height:190px;padding:15px;border:1px solid rgba(17,39,31,.12);border-top:6px solid var(--team);border-left:1px solid rgba(17,39,31,.12);border-radius:15px;background:linear-gradient(145deg,#f7f7f0,#eef1ea);box-shadow:0 6px 16px rgba(17,39,31,.07)}
#inferenceSelectionOverview .inference-selection-team-head{grid-template-columns:42px minmax(0,1fr) auto;gap:4px 9px}
#inferenceSelectionOverview .inference-rank{font-size:20px;grid-row:1 / span 2}
#inferenceSelectionOverview .inference-selection-team h4{font-size:19px}
#inferenceSelectionOverview .inference-selection-team strong{font-size:16px}
#inferenceSelectionOverview .inference-selection-team small{grid-column:2/-1;font-size:11px}
#inferenceSelectionOverview .inference-rank-bar{height:8px;margin:13px 0 12px}
#inferenceSelectionOverview .inference-selection-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin-top:auto}
#inferenceSelectionOverview .inference-selection-card{min-width:0;min-height:74px;justify-content:center;padding:9px 10px;border-color:rgba(31,106,83,.2);background:#fffefa;box-shadow:0 2px 7px rgba(17,39,31,.08)}
#inferenceSelectionOverview .inference-selection-card b{font-size:22px;letter-spacing:-.04em;color:var(--text)}
#inferenceSelectionOverview .inference-selection-card small{font-size:10.5px;color:var(--green);font-weight:900}
#inferenceSelectionOverview .selection-bands{display:grid;gap:14px}
#inferenceSelectionOverview .selection-band{overflow:hidden;border:1px solid rgba(17,39,31,.13);border-radius:14px;background:rgba(255,254,250,.62)}
#inferenceSelectionOverview .selection-band-head{display:flex;align-items:center;justify-content:space-between;margin:0;padding:11px 14px;border-bottom:1px solid rgba(17,39,31,.1);background:#eef1e8}
#inferenceSelectionOverview .selection-band-head h4{margin:0;color:var(--green);font-size:13px;letter-spacing:-.02em}
#inferenceSelectionOverview .selection-band-head span{color:var(--muted);font-size:11px;font-weight:900}
#inferenceSelectionOverview .selection-band-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;padding:10px}
#inferenceSelectionOverview .selection-band-cards .inference-selection-card{min-width:0}
#inferenceSelectionOverview .selection-band-empty{grid-column:1/-1;margin:5px;color:var(--muted);font-size:11px}
@media(max-width:700px){#inferenceSelectionOverview{grid-template-columns:1fr}}

/* Keep the checkpoint headline and hint cards compact enough for one classroom viewport. */
.inference-head h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.05em}
.inference-hints{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}
.inference-hint{padding:20px;border-radius:16px}
.inference-hint>span{font-size:32px}
.inference-hint h3{margin:8px 0 4px;font-size:24px}
.inference-hint p{margin:0;font-size:14px}
.inference-hint{width:100%;color:inherit;text-align:left;transition:transform .18s ease,box-shadow .18s ease}.inference-hint:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(17,39,31,.12)}.inference-hint:focus-visible{outline:4px solid var(--yellow);outline-offset:3px}.inference-hint-dialog{width:min(1120px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 36px);padding:22px;border:1px solid var(--line);border-radius:22px;background:#fffefa;color:var(--text);box-shadow:0 28px 90px rgba(17,39,31,.3)}.inference-hint-dialog::backdrop{background:rgba(17,39,31,.68);backdrop-filter:blur(5px)}.inference-hint-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.inference-hint-dialog-head h2{margin:0;font-size:26px}.inference-hint-dialog-head button{width:42px;height:42px;border-radius:11px;background:#edf1e9;font-size:28px;line-height:1}.inference-hint-dialog .hint-output{margin:0}.inference-hint-dialog .hint-output>h3{display:none}.inference-hint-dialog .hintmap{max-height:68vh}
@media(max-width:700px){.inference-hints{grid-template-columns:1fr}}
.inference-shell .inference-class-topline{display:flex;width:100%;margin:0 0 14px}.inference-brand-header{grid-template-columns:minmax(0,1fr);margin-bottom:24px}.inference-brand-header .brand{max-width:none}
.inference-stepbar{position:sticky;top:0;z-index:6;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 24px;background:rgba(255,254,250,.96);box-shadow:0 10px 24px rgba(17,39,31,.1);backdrop-filter:blur(8px)}

/* Classroom check-in: a map coordinate card, followed by the room doors. */
.entry-mode{background:#e9efe9}
.entry-mode .wrap{max-width:none;min-height:100%;padding:0}
.entry-mode .wrap::before,.entry-mode .wrap>header{display:none}
#entryView.active{min-height:100vh}
.entry-shell{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);min-height:100vh;background:#e9efe9}
.entry-intro{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:clamp(48px,7vw,112px);background:#173e32;color:#f8f6e9;isolation:isolate}
.entry-intro::before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(rgba(237,241,207,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(237,241,207,.08) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(135deg,#000,transparent 82%)}
.entry-intro::after{content:"";position:absolute;z-index:-1;width:min(66vw,760px);aspect-ratio:1;right:-30%;bottom:-34%;border:1px solid rgba(239,181,66,.42);border-radius:48% 52% 57% 43%;box-shadow:0 0 0 42px rgba(239,181,66,.08),0 0 0 86px rgba(239,181,66,.055),0 0 0 132px rgba(239,181,66,.035);transform:rotate(-12deg)}
.entry-kicker{margin:0 0 26px;color:#efb542;font-size:12px;font-weight:900;letter-spacing:.18em}
.entry-intro h1{margin:0;font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:clamp(48px,6.4vw,96px);font-weight:700;line-height:1.02;letter-spacing:-.075em}
.entry-intro h1 em{display:inline-block;color:#efb542;font-size:.78em;font-style:normal;white-space:nowrap}
.entry-lead{margin:32px 0 0;color:#ccd9d1;font-size:clamp(15px,1.4vw,20px);line-height:1.75;letter-spacing:-.025em}
.entry-coordinate{position:relative;width:180px;height:92px;margin-top:64px;border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28);font-family:ui-monospace,"SFMono-Regular",monospace;color:#f8f6e9}
.entry-coordinate::before,.entry-coordinate::after{content:"";position:absolute;left:76px;top:0;width:1px;height:100%;background:rgba(255,255,255,.22)}
.entry-coordinate::after{left:0;top:44px;width:100%;height:1px}
.entry-coordinate i{position:absolute;left:71px;top:39px;width:11px;height:11px;border:2px solid #efb542;border-radius:50%}
.entry-coordinate i:nth-child(2){inset:31px auto auto 63px;width:27px;height:27px;opacity:.55}.entry-coordinate i:nth-child(3){inset:22px auto auto 54px;width:45px;height:45px;opacity:.25}
.entry-coordinate b,.entry-coordinate span{position:absolute;left:0;font-size:11px;letter-spacing:.08em}.entry-coordinate b{top:9px}.entry-coordinate span{bottom:9px}.entry-coordinate small{position:absolute;right:0;bottom:9px;text-align:right;font-size:9px;line-height:1.45;letter-spacing:.14em}
.entry-form{align-self:center;width:min(560px,calc(100% - 64px));margin:48px auto;padding:clamp(28px,4vw,54px);border:1px solid rgba(17,39,31,.14);border-radius:28px;background:#fffefa;box-shadow:0 26px 70px rgba(17,39,31,.13)}
.entry-form-head{display:grid;gap:7px;margin-bottom:34px}.entry-form-head span{color:var(--green);font-size:11px;font-weight:900;letter-spacing:.15em}.entry-form-head strong{font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:clamp(27px,3vw,38px);letter-spacing:-.055em}
.entry-field{display:grid;gap:9px;margin-top:20px}.entry-field>span:first-child,.entry-grade legend{color:#44564e;font-size:12px;font-weight:900}.entry-field b,.entry-grade b{display:inline-block;width:30px;color:#9b6518;font-family:ui-monospace,"SFMono-Regular",monospace;font-size:10px;letter-spacing:.08em}
.entry-field select,.entry-text-input,.school-input{width:100%;height:58px;border:1px solid #bcc8bf;border-radius:12px;background:#f5f5ed;color:var(--text)}
.entry-text-input{padding:0 16px}
.entry-field select{padding:0 44px 0 16px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#476057 50%),linear-gradient(135deg,#476057 50%,transparent 50%);background-position:calc(100% - 20px) 25px,calc(100% - 15px) 25px;background-size:5px 5px;background-repeat:no-repeat}
.school-input{display:flex;align-items:center;padding:0 16px}.school-input input{min-width:0;flex:1;border:0;outline:0;background:transparent}.school-input i{color:#68736e;font-size:13px;font-style:normal;font-weight:800}
.entry-field select:focus,.entry-text-input:focus,.school-input:focus-within{outline:3px solid rgba(239,181,66,.32);outline-offset:2px;border-color:#9b6518}
.entry-grade{margin:22px 0 0;padding:0;border:0}.entry-grade div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}.entry-grade label{position:relative}.entry-grade input{position:absolute;opacity:0;pointer-events:none}.entry-grade span{display:grid;place-items:center;height:52px;border:1px solid #bcc8bf;border-radius:12px;background:#f5f5ed;font-size:14px;font-weight:900}.entry-grade input:checked+span{border-color:#173e32;background:#173e32;color:#fff}.entry-grade input:focus-visible+span{outline:3px solid rgba(239,181,66,.42);outline-offset:2px}
.entry-error{margin:16px 0 0;color:#a8352d;font-size:12px;font-weight:800}
.entry-submit{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:62px;margin-top:28px;padding:0 18px 0 22px;border-radius:13px;background:#efb542;color:#2f270d;font-size:15px;font-weight:900;transition:transform .18s ease,box-shadow .18s ease}.entry-submit b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#173e32;color:#fff;font-size:18px}.entry-submit:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(155,101,24,.2)}.entry-submit:focus-visible{outline:3px solid #173e32;outline-offset:3px}
.entry-guide-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:72px;margin-top:10px;padding:12px 16px;border:1px solid rgba(23,62,50,.22);border-radius:13px;background:#eef2e8;color:#173e32;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.entry-guide-play{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#173e32;color:#efb542;font-size:12px;text-indent:2px}.entry-guide-link span:nth-child(2){display:grid;gap:1px}.entry-guide-link small{color:#6a766f;font-size:10px;font-weight:800}.entry-guide-link strong{font-size:14px;letter-spacing:-.025em}.entry-guide-link>b{font-size:17px}.entry-guide-link:hover{transform:translateY(-2px);border-color:#173e32;background:#f7f6ee}.entry-guide-link:focus-visible{outline:3px solid rgba(239,181,66,.55);outline-offset:3px}
.entry-privacy{margin:14px 0 0;color:#78847e;font-size:10.5px;text-align:center}
.sync-status{display:none!important}

#classView.active{animation:class-in .42s ease both}.class-shell{position:relative;max-width:1180px;margin:0 auto}.class-back{position:absolute;top:0;right:0;margin:0;padding:8px 0;color:var(--green);font-size:12px;font-weight:900}.class-back:hover{text-decoration:underline}.class-back:focus-visible{outline:3px solid rgba(239,181,66,.4);outline-offset:4px;border-radius:3px}
.class-heading{position:relative;margin-bottom:32px;padding:8px 280px 28px 0;border-bottom:1px solid rgba(17,39,31,.18)}.class-heading::after{content:"ROOM / 01—15";position:absolute;right:0;bottom:30px;color:#a4aca4;font-family:ui-monospace,"SFMono-Regular",monospace;font-size:13px;letter-spacing:.16em}.class-heading p{margin:0 0 6px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.17em}.class-heading strong{display:block;color:var(--green);font-size:14px}.class-heading h2{margin:20px 0 5px;font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:clamp(38px,5vw,64px);letter-spacing:-.065em}.class-heading>span{color:var(--muted);font-size:13px}
.class-session-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.global-class-topline #classTop,.inference-class-topline .inference-class-top{align-self:flex-start;flex:0 0 auto;margin:0;padding:8px 14px;border-color:var(--green);background:var(--green);color:#fff}.global-class-topline .reset-group{display:flex;margin:0;padding:0;border:0;background:transparent}.global-class-topline .reset-group .tbtn{min-height:40px;padding:8px 14px;border:1px solid rgba(161,71,56,.35);border-radius:10px;background:#fff7f4;color:#a14738;font-size:12px;font-weight:900}.global-class-topline .reset-group .tbtn:hover,.global-class-topline .reset-group .tbtn:focus-visible{outline:3px solid rgba(239,181,66,.3);outline-offset:2px;border-color:#bd6554;color:#842f23}
.brand #headSub{display:none!important}
.class-page-tools{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin:0 0 18px}.class-page-tools #gridBalanceBtn{margin:0}.class-page-tools>#hintPrintTop,.class-page-tools>#boardPrintTop{min-height:40px;padding:9px 14px;border:1px solid rgba(31,106,83,.18);border-radius:10px;background:#eef2e8;color:var(--green);font-size:12px;font-weight:900}.class-page-tools>#hintPrintTop:hover,.class-page-tools>#boardPrintTop:hover,.class-page-tools>#hintPrintTop:focus-visible,.class-page-tools>#boardPrintTop:focus-visible{outline:3px solid rgba(239,181,66,.3);outline-offset:2px;border-color:var(--green);background:#fffefa}
#classView .class-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:0}
#classView .class-choice{position:relative;align-items:flex-start;min-height:132px;padding:18px;border-color:rgba(17,39,31,.14);border-radius:5px;background:#fffefa;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
#classView .class-choice::before{content:"ROOM";position:absolute;right:15px;top:16px;color:#a0aaa4;font-family:ui-monospace,"SFMono-Regular",monospace;font-size:8px;letter-spacing:.12em}
#classView .class-choice::after{content:"→";position:absolute;right:15px;bottom:13px;color:var(--green);font-size:17px}
#classView .class-choice b{font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:34px;letter-spacing:-.06em}#classView .class-choice span{margin-top:auto;color:var(--muted);font-size:10px}
#classView .class-choice:hover,#classView .class-choice:focus-visible{transform:translateY(-3px);outline:none;border-color:var(--green);background:#fffefa;box-shadow:0 10px 22px rgba(17,39,31,.09)}
#classView .class-choice.saved{border-top:5px solid var(--yellow);background:#fffaf0}#classView .class-choice.saved::before{color:#9b6518}
@keyframes class-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:900px){.entry-shell{grid-template-columns:1fr}.entry-intro{min-height:48vh;padding:54px 32px}.entry-coordinate{display:none}.entry-form{margin:0 auto 42px;transform:translateY(-18px)}#classView .class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.entry-intro{min-height:43vh;padding:42px 22px 62px}.entry-intro h1{font-size:46px}.entry-lead{margin-top:20px;font-size:14px}.entry-form{width:calc(100% - 24px);padding:25px 20px;border-radius:21px}.entry-form-head{margin-bottom:26px}.entry-field select,.school-input{height:54px}.entry-grade span{height:48px}.class-heading{padding-right:0}.class-heading::after{display:none}#classView .class-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#classView .class-choice{min-height:112px;padding:14px}#classView .class-choice b{font-size:29px}}
@media(prefers-reduced-motion:reduce){#classView.active,.entry-submit,.entry-guide-link{animation:none;transition:none}}

/* A familiar timer toolbar: set the duration first, then control one clock. */
.inference-time-setting{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px auto 0;color:var(--muted);font-size:13px;font-weight:900}.inference-time-setting label{color:var(--green)}.inference-time-setting input{width:76px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fffefa;color:var(--text);font-weight:900;text-align:center}.inference-time-setting input:focus{outline:3px solid rgba(239,181,66,.32);outline-offset:2px;border-color:var(--gold)}.inference-time-setting input:disabled{background:#e9ece5;color:#8a948e}.inference-actions{align-items:center;width:fit-content;max-width:100%;margin:16px auto 0;padding:7px;border:1px solid var(--line);border-radius:14px;background:#fffefa;box-shadow:0 5px 16px rgba(17,39,31,.08)}.inference-actions button{min-width:150px;min-height:44px}.inference-actions button:disabled{opacity:.45;cursor:not-allowed}.inference-actions .primary{background:var(--yellow);border-color:var(--yellow)}
@media(max-width:700px){.inference-actions{display:grid;width:100%;grid-template-columns:1fr 1fr}.inference-actions button:last-child{grid-column:1/-1}.inference-actions button{width:100%}}

/* Keep each turn pill readable while showing the block chosen in this round. */
.turn-order-step{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:6px;align-items:center}
.turn-order-step i{grid-row:1 / span 2}
.turn-order-pick{grid-column:2;color:var(--gold);font-size:12px;font-weight:900;line-height:1.1;white-space:nowrap}
.turn-order-step b{color:var(--text);font-size:14px}

/* Make the map utility self-explanatory and keep class identity above the room prompt. */
.mapcard>.block-search-group{gap:7px}
.block-search-group label{white-space:nowrap}
.block-search-group input{width:64px;text-align:center}
.block-search-group input::placeholder{color:#9aa39d;font-size:10px}
.block-search-group .tbtn{padding-inline:11px}
.class-topline{display:none;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.global-class-topline{width:min(1180px,100%);margin:0 auto 14px}
body:not(.entry-mode) .global-class-topline{display:flex}
.class-profile p{margin:0 0 5px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.17em}
.class-profile strong{display:block;color:var(--green);font-size:14px}
.class-topline .class-back{position:static;flex:0 0 auto;padding:5px 0}
.class-heading{margin-bottom:28px;padding:0 280px 22px 0}
.class-heading::after{bottom:24px}
.class-heading h2{margin:0 0 5px;font-size:clamp(30px,4vw,48px);font-weight:600}
.class-prep-tab{display:block;min-height:0;margin:0 0 10px;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:clamp(30px,4vw,48px);font-weight:600;line-height:1.15;letter-spacing:-.065em;box-shadow:none}
.class-population-link{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:10px 15px;border:1px solid rgba(23,102,79,.2);border-radius:10px;background:#eef2e8;color:var(--green);font-size:13px;font-weight:900}.class-population-link span{color:var(--muted);font-size:10px;font-weight:700}.class-population-link:hover,.class-population-link:focus-visible{outline:3px solid rgba(239,181,66,.3);outline-offset:2px;border-color:var(--green);background:#fffefa}
#classView .class-shell{font-family:"Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif}#classView .class-prep-tab,#classView .class-heading h2,#classView .class-choice b{font-family:inherit;letter-spacing:-.045em}#classView .class-prep-tab{font-weight:800}#classView .class-heading h2{font-weight:800}#classView .class-choice b{font-weight:800}
.class-inquiry-banner{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);gap:28px;align-items:center;margin:30px 0 0;padding:22px 24px;border:1px solid rgba(23,102,79,.26);border-left:6px solid var(--green);border-radius:8px;background:linear-gradient(90deg,#e8f2e8 0%,#fffefa 64%);box-shadow:0 10px 24px rgba(17,39,31,.05)}.class-inquiry-kicker{display:block;margin-bottom:5px;color:var(--gold);font:900 9px ui-monospace,"SFMono-Regular",monospace;letter-spacing:.16em}.class-inquiry-banner h2{margin:0;color:var(--text);font-size:clamp(24px,3vw,34px);letter-spacing:-.055em}.class-inquiry-banner p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55;word-break:keep-all}.class-inquiry-status{display:inline-block;margin-top:16px;padding:5px 9px;border-radius:999px;background:#ddefd9;color:#286348;font-size:11px;font-weight:800}
.class-inquiry-status{border:0;cursor:pointer}.class-inquiry-status:hover{background:#cce8ce}.class-inquiry-status:focus-visible{outline:3px solid rgba(239,181,66,.45);outline-offset:3px}
/* Keep teacher preparation and the next learning step together above the room list. */
#classView .class-shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
#classView .class-prep-tab{grid-column:1;grid-row:1;display:flex;flex-direction:column;min-height:0;margin:0;padding:24px 26px;border:1px solid rgba(23,102,79,.26);border-left:6px solid var(--gold);border-radius:8px;background:linear-gradient(135deg,#fff8e8,#fffefa 68%);box-shadow:0 10px 24px rgba(17,39,31,.05)}
#classView .class-prep-tab::before,#classView .class-prep-tab::after{content:none}
.class-prep-copy>span{display:block;margin-bottom:7px;color:var(--gold);font:900 9px ui-monospace,"SFMono-Regular",monospace;letter-spacing:.16em}.class-prep-copy>strong{display:block;color:var(--text);font-size:clamp(30px,4vw,48px);font-weight:800;letter-spacing:-.045em;line-height:1.15}
#classView .class-prep-tab .class-page-tools{display:flex;grid-column:auto;grid-row:auto;gap:6px;margin:auto 0 0}
#classView .class-prep-tab .class-page-tools #gridBalanceBtn{min-height:36px;padding:8px 10px}.class-prep-tab .class-page-tools #gridBalanceBtn span{display:none}.class-prep-tab .class-page-tools>#hintPrintTop,.class-prep-tab .class-page-tools>#boardPrintTop,.class-prep-tab .class-page-tools>#worksheetPrintTop{min-height:36px;padding:8px 10px;font-size:11px}
#classView .class-inquiry-banner{grid-column:2;grid-row:1;display:flex;align-items:stretch;margin:0;padding:24px 26px}
#classView .class-inquiry-banner>div{display:flex;flex:1;flex-direction:column}#classView .class-inquiry-banner h2{font-size:clamp(30px,4vw,48px);font-weight:800;letter-spacing:-.045em;line-height:1.15}
#classView .class-inquiry-status{margin-top:auto;align-self:flex-start}
#classView .class-heading{grid-column:1/-1;grid-row:3;margin:22px 0 28px}
#classView .class-grid{grid-column:1/-1;grid-row:4}
#classView .reset-group{grid-column:1/-1;grid-row:5}
@media(max-width:900px){#classView .class-shell{grid-template-columns:1fr}#classView .class-prep-tab{grid-column:1;grid-row:1}#classView .class-inquiry-banner{grid-column:1;grid-row:2;margin:14px 0 0}#classView .class-heading{grid-column:1;grid-row:3}#classView .class-grid{grid-column:1;grid-row:4}#classView .reset-group{grid-column:1;grid-row:5}#classView .class-prep-tab .class-page-tools{margin-top:18px}}
.setup-main .team-name-privacy{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.55}.team-name-privacy strong{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(23,102,79,.2);border-radius:7px;background:#e8f2e8;color:var(--green);font-size:12px;line-height:1.2}.team-name-privacy strong::before{content:"✓";font-size:13px}
@media(max-width:600px){.class-topline{align-items:flex-start}.class-heading{padding-right:0}.class-heading::after{display:none}.class-page-tools{justify-content:flex-start}.class-inquiry-banner{grid-template-columns:1fr;gap:16px;padding:20px}.class-inquiry-banner ol{grid-template-columns:1fr}.class-inquiry-banner li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.class-inquiry-banner li span{margin:0}.class-inquiry-banner li:not(:last-child) b::after{content:""}}
.analysis-hero{display:none!important}
.land{stroke:none!important}
.answer-coastline{stroke:none!important}
.hintmap use[href="#landpath"],.hintmap>path[stroke="#7b93a0"],.hintmap>path[stroke="#687c83"]{stroke:none!important}
/* Keep the classroom header full-size in board print preview too. */
body.board-preview-active>.wrap>header{min-height:0;margin-bottom:24px;padding:21px 28px 25px}body.board-preview-active>.wrap>header .brand h1{font-size:clamp(42px,4.15vw,55px)}body.board-preview-active>.wrap>header .brand .eyebrow,body.board-preview-active>.wrap>header .brand p{display:block}

/* Q1 uses aligned small multiples: one visual layer at a time keeps climate, elevation and rivers legible. */
.analysis-comparison-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:2px 0 12px}.analysis-kicker{display:block;margin-bottom:3px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.13em}.analysis-comparison-head h3{margin:0;font-size:18px;letter-spacing:-.04em}.analysis-comparison-note{color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.analysis-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analysis-comparison-grid article{min-width:0;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fbfaf4}.analysis-comparison-grid article>header{display:flex;align-items:center;gap:8px;margin:0 2px 6px}.analysis-comparison-grid article>header>span{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--green);color:#fff;font:900 10px ui-monospace,"SFMono-Regular",monospace}.analysis-comparison-grid article h3{margin:0;font-size:14px;letter-spacing:-.03em}.analysis-comparison-grid article p{margin:1px 0 0;color:var(--muted);font-size:9px}.analysis-mini-map{overflow:hidden;border:1px solid rgba(17,39,31,.13);border-radius:8px;background:#cbe3f1}.analysis-mini-map svg{display:block;width:100%;height:auto;aspect-ratio:2.5}.analysis-mini-map .hint-grid-nums text{font-size:13px}.analysis-mini-map .answer-cell{stroke:rgba(255,255,255,.72);stroke-width:1.1}.analysis-mini-map .answer-cell.analysis-top{stroke:#0d5f4a;stroke-width:5}.analysis-mini-map .answer-country-borders,.analysis-mini-map .answer-coastline{display:none}.analysis-mini-map .analysis-thematic-raster{opacity:.82;mix-blend-mode:multiply}.analysis-comparison-key{display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px 11px;border-radius:9px;background:#f3eddb;color:#665526;font-size:11px;line-height:1.45}.analysis-comparison-key i{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(23,102,79,.12)}.analysis-comparison-key b{color:var(--green)}
.team-trend{max-height:none;margin-top:24px;border:1px solid var(--line);border-radius:12px;background:#fbfaf4}.team-trend-axis line{stroke:rgba(17,39,31,.14);stroke-width:1}.team-trend-axis text{fill:var(--muted);font:700 11px "Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif}.team-trend-axis .team-trend-phase{fill:var(--green);font-size:10px}.team-trend-axis .team-trend-y-title,.team-trend-axis .team-trend-x-title{fill:var(--text);font-size:10px;font-weight:900}
.answer-cell.analysis-choice{stroke:#10271f;stroke-width:8;filter:drop-shadow(0 0 5px #fff);paint-order:stroke;vector-effect:non-scaling-stroke}.analysis-mini-map .answer-cell.analysis-choice{stroke:#10271f;stroke-width:6}.inquiry-stage-guide{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;align-items:center;margin:16px 0 20px;padding:14px 16px;border:1px solid rgba(23,102,79,.2);border-radius:14px;background:linear-gradient(135deg,#edf5ee,#fbfaf4)}.inquiry-stage-kicker{align-self:stretch;display:grid;place-items:center;padding:8px 11px;border-radius:10px;background:var(--green);color:#fff;font-size:11px;font-weight:900;letter-spacing:-.02em}.inquiry-stage-facts{display:flex;flex-wrap:wrap;gap:7px}.inquiry-stage-facts span{padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:#fffefa;color:var(--muted);font-size:11px}.inquiry-stage-facts b{color:var(--text)}.inquiry-reason-row{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:10px;border-top:1px solid rgba(23,102,79,.14)}.inquiry-reason-row strong{margin-right:3px;color:var(--green);font-size:11px}.inquiry-reason-row span{padding:5px 8px;border-radius:999px;background:#fff4d8;color:#665526;font-size:10px;font-weight:800}
.view>.stepbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}.concept-learning-card{min-width:0;padding:15px 16px;border:1px solid rgba(23,102,79,.22);border-radius:14px;background:linear-gradient(145deg,#edf5ee,#fffefa);box-shadow:0 8px 20px rgba(17,39,31,.08)}.concept-learning-kicker{display:inline-block;margin-bottom:5px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.12em}.concept-learning-card h2{margin:0 0 7px;font-size:16px;letter-spacing:-.05em}.concept-learning-lead{margin:0 0 10px;color:var(--muted);font-size:10px;line-height:1.45}.concept-learning-card dl{display:grid;gap:7px;margin:0}.concept-learning-card dl div{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:start}.concept-learning-card dt{padding:3px 6px;border-radius:6px;background:var(--green);color:#fff;font-size:9px;font-weight:900;white-space:nowrap}.concept-learning-card dd{margin:2px 0 0;color:var(--text);font-size:10px;line-height:1.4}.concept-learning-check{margin:10px 0 0;padding-top:9px;border-top:1px solid rgba(23,102,79,.16);color:var(--muted);font-size:10px;line-height:1.4}.concept-learning-check b{color:var(--green)}
.concept-page{display:grid;gap:18px}.concept-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:30px 34px;border-radius:22px;background:linear-gradient(145deg,#173e32,#28634f);color:#fff}.concept-page-head h2{margin:5px 0 8px;font-size:clamp(28px,4vw,48px);letter-spacing:-.06em}.concept-page-head p{margin:0;color:#dce9e1;font-size:15px}.concept-page-head .concept-learning-kicker{color:#ffd27b}.concept-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.concept-main-card,.concept-teaching-card,.concept-teacher-prompt{padding:22px 24px;border:1px solid var(--line);border-radius:18px;background:#fffefa;box-shadow:0 10px 24px rgba(17,39,31,.06)}.concept-main-card{position:relative;min-height:190px}.concept-index{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--green);color:#fff;font:900 11px ui-monospace,"SFMono-Regular",monospace}.concept-main-card h3{margin:14px 0 8px;font-size:24px;letter-spacing:-.05em}.concept-main-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.concept-example{display:grid;gap:3px;margin-top:15px;padding-top:12px;border-top:1px solid var(--line);font-size:11px;line-height:1.45}.concept-example b{color:var(--green)}.concept-example span{color:var(--text)}.concept-teaching-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1.1fr);gap:24px;align-items:center}.concept-teaching-card h3{margin:4px 0 8px;font-size:25px;letter-spacing:-.05em}.concept-teaching-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.concept-reading-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.concept-reading-steps li{display:grid;gap:3px;padding:11px 12px;border-radius:11px;background:#f3eddb}.concept-reading-steps b{color:var(--green);font-size:12px}.concept-reading-steps span{color:var(--muted);font-size:11px;line-height:1.4}.concept-teacher-prompt{margin:0;background:#f3eddb;color:#665526;font-size:14px;line-height:1.55}.concept-teacher-prompt b{color:var(--green)}
@media(max-width:900px){.concept-card-grid{grid-template-columns:1fr}.concept-teaching-card{grid-template-columns:1fr}}
@media(max-width:720px){.view>.stepbar{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-learning-card{grid-column:1/-1}.concept-page-head{padding:24px 20px;flex-direction:column}.concept-page-head h2{font-size:32px}.concept-main-card,.concept-teaching-card,.concept-teacher-prompt{padding:20px}.concept-reading-steps{grid-template-columns:1fr}}
@media(max-width:560px){.analysis-comparison-head{align-items:flex-start;flex-direction:column;gap:3px}.analysis-comparison-note{white-space:normal}.analysis-comparison-grid{grid-template-columns:1fr}.analysis-comparison-grid article p{font-size:10px}.inquiry-stage-guide{grid-template-columns:1fr}.inquiry-stage-kicker{justify-self:start}.inquiry-reason-row{grid-column:1}}

/* Q1 is the orientation map: give the whole world visual priority, then place evidence beneath it. */
#resultView [aria-labelledby="inquiryQ1"] .inquiry-split{grid-template-columns:1fr;gap:18px}
#resultView [aria-labelledby="inquiryQ1"] .answer-card{margin:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fffefa,#f6f3e9)}
#resultView [aria-labelledby="inquiryQ1"] .answer-map{width:100%;max-height:none;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(17,39,31,.08)}
#resultView [aria-labelledby="inquiryQ1"] .answer-legend{padding:0 4px}
#resultView [aria-labelledby="inquiryQ1"] .answer-legend.choice-frequency{flex-wrap:wrap}.choice-frequency .answer-gradient{background:linear-gradient(90deg,#f1eee4,hsl(164 52% 36%))}.choice-aggregate-status{margin-left:auto;padding:5px 8px;border-radius:8px;background:#eef2e8;color:var(--green);font-size:10px;font-weight:900}
#resultView [aria-labelledby="inquiryQ1"] .inquiry-evidence{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px}
#resultView [aria-labelledby="inquiryQ1"] .inquiry-evidence>div{min-width:0;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fbfaf4}
#resultView [aria-labelledby="inquiryQ1"] .inquiry-evidence h3{margin:0 0 12px;font-size:18px;letter-spacing:-.04em}
.analysis-chart-sub{margin:-6px 0 14px;color:var(--muted);font-size:10px;line-height:1.45}.analysis-empty{margin:0;padding:18px;border:1px dashed var(--line);border-radius:10px;background:#fffefa;color:var(--muted);font-size:12px;text-align:center}.blind-selection-chart,.blind-region-chart{display:grid;gap:9px}.blind-selection-row{display:grid;grid-template-columns:minmax(118px,150px) minmax(110px,1fr) minmax(104px,130px);gap:10px;align-items:center}.blind-selection-label,.blind-selection-value{display:grid;min-width:0}.blind-selection-label b{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.blind-selection-label small,.blind-selection-value small{color:var(--muted);font-size:9px;line-height:1.35}.blind-selection-track{position:relative;height:22px;border-left:1px solid #68736e;border-radius:0 6px 6px 0;background:#eceee8;overflow:visible}.blind-selection-track>b{display:block;height:100%;border-radius:0 6px 6px 0;background:var(--green)}.blind-selection-track>em{position:absolute;top:-3px;bottom:-3px;width:2px;background:#9b6518;box-shadow:0 0 0 1px #fff;font-style:normal}.blind-selection-value{text-align:right}.blind-selection-value>b{color:var(--gold);font-size:11px}.blind-selection-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}.blind-selection-summary span{padding:6px 8px;border-radius:8px;background:#eef2e8;color:var(--muted);font-size:10px}.blind-selection-summary b{color:var(--green)}.blind-region-row{display:grid;grid-template-columns:minmax(92px,130px) minmax(80px,1fr) 32px;gap:8px;align-items:center}.blind-region-row>span{overflow:hidden;color:var(--text);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.blind-region-row>i{height:19px;border-left:1px solid #68736e;border-radius:0 6px 6px 0;background:#eceee8;overflow:hidden}.blind-region-row>i>b{display:block;height:100%;border-radius:0 6px 6px 0;background:var(--yellow)}.blind-region-row>strong{color:var(--gold);font-size:11px;text-align:right}.analysis-map-key{display:inline-flex;align-items:center;gap:5px;margin-left:12px;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.analysis-map-key i{width:14px;height:14px;border:3px solid #10271f;background:#fff;font-style:normal}.analysis-map-key i.top{border-color:#0d5f4a;border-width:2px}
#resultView .core-summary{display:none!important}
@media(max-width:900px){#resultView [aria-labelledby="inquiryQ1"] .inquiry-evidence{grid-template-columns:1fr}}
@media(max-width:700px){.blind-selection-row{grid-template-columns:minmax(100px,125px) minmax(80px,1fr) minmax(88px,108px)}.analysis-map-key{width:100%;margin:5px 0 0}}

/* Round reveal: hold the enlarged map in place while picks are absorbed into the rail below. */
body.round-reveal-lock{overflow:hidden;overscroll-behavior:none}
#gameView.round-reveal-mode .game-layout{display:block;min-height:100vh}
#gameView.round-reveal-mode .mapcard{position:fixed;inset:64px 0 30dvh;z-index:60;display:grid;place-items:center;padding:0;border:0;border-radius:0;background:#cbe3f1;box-shadow:none;pointer-events:none}
#gameView.round-reveal-mode .mapcard .map{width:100%;height:100%;object-fit:contain;cursor:default}
#gameView.round-reveal-mode .mapcard .zoomui,#gameView.round-reveal-mode .mapcard .zlevel{display:none}
#gameView.round-reveal-mode .round-reveal-stage{position:fixed;inset:auto 0 0;height:30dvh;z-index:70;display:flex;align-items:center;justify-content:center;padding:8px 24px;overflow:hidden;background:rgba(17,39,31,.34);pointer-events:none}
#gameView.round-reveal-mode .round-reveal-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);gap:8px 16px;width:100%;height:100%;max-height:none;overflow:hidden;padding:10px 16px;background:rgba(255,254,250,.97);box-shadow:0 18px 45px rgba(17,39,31,.24);pointer-events:auto}
#gameView.round-reveal-mode .round-reveal-head{text-align:left}
#gameView.round-reveal-mode .round-reveal-head h2{font-size:24px;line-height:1.1}
#gameView.round-reveal-mode .round-reveal-head p{margin:3px 0 0;font-size:13px;line-height:1.3}
#gameView.round-reveal-mode .round-reveal-grid{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:6px;min-height:0;overflow:auto}
#gameView.round-reveal-mode .round-fly-card{min-height:72px;gap:2px 8px;padding:5px 10px;box-shadow:none}
#gameView.round-reveal-mode .round-fly-card .fly-rank{width:32px;height:32px;font-size:19px}
#gameView.round-reveal-mode .round-fly-card .fly-team b{font-size:20px;line-height:1.1;overflow-wrap:anywhere}
#gameView.round-reveal-mode .round-fly-card .fly-team span{font-size:12px;line-height:1.2;white-space:nowrap}
#gameView.round-reveal-mode .round-fly-card .fly-pop{font-size:24px;line-height:1.1}
#gameView.round-reveal-mode .round-reveal-actions{grid-column:2;grid-row:1;align-self:center;margin:0}
#gameView.round-reveal-mode .round-reveal-actions .primary{min-height:40px;padding:8px 14px;font-size:16px;white-space:nowrap}
#gameView #gamePlay .turn-head{gap:12px;font-size:24px}
#gameView #gamePlay .turn-head .dot{width:20px;height:20px}
#gameView #gamePlay .turn-head .step{font-size:17px}
#gameView #gamePlay .turn-result-button{font-size:20px}
#gameView #gamePlay .pick-note{margin-top:12px;font-size:17px}
#gameView #gamePlay .scoreboard{grid-template-columns:repeat(auto-fill,minmax(190px,240px));justify-content:start;gap:12px;margin-top:16px}
#gameView #gamePlay .score-row{position:relative;min-height:124px;overflow:hidden;padding:16px 18px;border:1px solid color-mix(in srgb,var(--team) 30%,var(--line))!important;border-top:6px solid var(--team)!important;border-left:1px solid color-mix(in srgb,var(--team) 30%,var(--line))!important;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--team) 10%,#fffefa),#fffefa 68%);box-shadow:0 10px 22px rgba(17,39,31,.08)}
#gameView #gamePlay .score-row::after{position:absolute;right:-30px;bottom:-42px;width:138px;height:138px;border-radius:50%;background:var(--team);content:"";opacity:.08}
#gameView #gamePlay .score-row.now{box-shadow:0 0 0 3px var(--yellow),0 10px 22px rgba(17,39,31,.12)}
#gameView #gamePlay .score-row .score-main{position:relative;z-index:1;height:100%;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto 1fr;gap:3px 12px}
#gameView #gamePlay .score-row .rank{grid-row:1 / span 2;width:44px;height:44px;align-self:center;border-radius:50%;background:var(--team);color:#fff;font-size:20px;box-shadow:0 0 0 4px rgba(255,255,255,.7),0 3px 8px color-mix(in srgb,var(--team) 28%,transparent)}
#gameView #gamePlay .score-row .name{align-self:end;font-size:22px;letter-spacing:-.05em}
#gameView #gamePlay .score-row .score{grid-column:2;align-self:start;color:var(--gold);font-size:28px;letter-spacing:-.055em;line-height:1.02}
#gameView #gamePlay .score-row .score::before{display:block;margin-bottom:4px;color:var(--muted);content:"누적 인구";font-size:10px;font-weight:900;letter-spacing:.08em}
@media(max-width:760px){#gameView.round-reveal-mode .round-reveal-stage{padding:6px}#gameView.round-reveal-mode .round-reveal-panel{padding:8px;gap:6px}#gameView.round-reveal-mode .round-reveal-head h2{font-size:18px}#gameView.round-reveal-mode .round-reveal-head p{display:none}#gameView.round-reveal-mode .round-reveal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#gameView.round-reveal-mode .round-fly-card{padding:5px 7px}#gameView.round-reveal-mode .round-fly-card .fly-team b{font-size:18px}#gameView.round-reveal-mode .round-fly-card .fly-pop{font-size:21px}#gameView.round-reveal-mode .round-reveal-actions .primary{padding:7px 9px;font-size:13px}#gameView #gamePlay .turn-head{font-size:21px}#gameView #gamePlay .turn-head .step{font-size:15px}#gameView #gamePlay .turn-result-button{font-size:17px}#gameView #gamePlay .pick-note{font-size:15px}#gameView #gamePlay .scoreboard{grid-template-columns:1fr}#gameView #gamePlay .score-row .name{font-size:19px}#gameView #gamePlay .score-row .score{font-size:21px}}

/* Q4 reads like an evidence trail: each new map layer advances the class explanation. */
#resultView [aria-labelledby="inquiryQ4"]{overflow:hidden;background:linear-gradient(145deg,rgba(255,254,250,.98),rgba(239,244,235,.94))}
#resultView [aria-labelledby="inquiryQ4"]>h2{max-width:900px;font-family:"AppleMyungjo","Nanum Myeongjo",serif;font-size:clamp(32px,4.2vw,52px);font-weight:700;line-height:1.12;letter-spacing:-.065em}
#resultView [aria-labelledby="inquiryQ4"]>.inquiry-prompt{max-width:820px;margin:12px 0 26px;font-size:17px;line-height:1.7}
#inquiryProgress{display:grid;gap:18px}.evidence-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.evidence-step{position:relative;min-width:0;min-height:210px;padding:18px;border:1px solid rgba(31,106,83,.2);border-radius:18px;background:#fffefa;box-shadow:0 8px 20px rgba(17,39,31,.055)}.evidence-step:not(:last-child)::after{content:"→";position:absolute;z-index:2;right:-18px;top:34px;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;background:#fffefa;color:var(--gold);font-weight:900}.evidence-step header{align-items:center;gap:10px;margin:0;padding:0;border:0}.evidence-step header>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:var(--green);color:#fff;font:900 11px ui-monospace,"SFMono-Regular",monospace}.evidence-step header small{display:block;color:var(--gold);font:900 9px ui-monospace,"SFMono-Regular",monospace;letter-spacing:.12em}.evidence-step h3{margin:1px 0 0;font-size:16px}.evidence-step>p{min-height:42px;margin:16px 0;color:var(--muted);font-size:12px;line-height:1.5;word-break:keep-all}.evidence-value{display:flex;flex-direction:column-reverse;gap:2px}.evidence-value strong{color:var(--text);font-size:clamp(19px,2vw,27px);letter-spacing:-.05em;white-space:nowrap}.evidence-value span{color:var(--muted);font-size:9px;font-weight:800}.evidence-meter{display:block;height:6px;margin-top:13px;overflow:hidden;border-radius:99px;background:#e8ece6}.evidence-meter b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--yellow),var(--green))}.evidence-step.is-empty{background:rgba(255,254,250,.58);box-shadow:none}.evidence-step.is-empty header>span{background:#aeb8b1}.evidence-step.is-empty .evidence-value strong{color:#89938d}
.evidence-trends,.phase-best-wrap{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fffefa}.evidence-trends>header,.phase-best-wrap>header{display:block;margin:0 0 10px;padding:0;border:0}.evidence-trends>header>span,.phase-best-wrap>header>span{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.13em}.evidence-trends>header h3,.phase-best-wrap>header h3{margin:3px 0 0;font-size:20px}.evidence-trends .team-trend{margin-top:8px}.evidence-trends .team-trend-legend{margin-top:10px}.phase-best{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.phase-best span{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;min-width:0;padding:12px;border:1px solid rgba(31,106,83,.13);border-radius:12px;background:#f3f2ea}.phase-best i{grid-row:1 / span 2;display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#e0ebe3;color:var(--green);font:900 9px ui-monospace,"SFMono-Regular",monospace}.phase-best b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.phase-best em{overflow:hidden;color:var(--muted);font-size:10px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.evidence-journey,.phase-best{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence-step:nth-child(2)::after{display:none}}
@media(max-width:560px){#resultView [aria-labelledby="inquiryQ4"]>h2{font-family:inherit;font-size:31px;font-weight:900}.evidence-journey,.phase-best{grid-template-columns:1fr}.evidence-step{min-height:0}.evidence-step::after{display:none!important}.evidence-step>p{min-height:0}.evidence-value strong{font-size:23px}.evidence-trends,.phase-best-wrap{padding:14px}.evidence-trends{overflow-x:auto}.evidence-trends .team-trend{min-width:620px}.phase-best span{grid-template-columns:auto minmax(0,1fr)}}

.class-page-tools>#worksheetPrintTop{min-height:40px;padding:9px 14px;border:1px solid rgba(31,106,83,.18);border-radius:10px;background:#eef2e8;color:var(--green);font-size:12px;font-weight:900}.class-page-tools>#worksheetPrintTop:hover,.class-page-tools>#worksheetPrintTop:focus-visible{outline:3px solid rgba(239,181,66,.3);outline-offset:2px;border-color:var(--green);background:#fffefa}
.evidence-journey,.phase-best{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.evidence-journey,.phase-best{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.evidence-journey,.phase-best{grid-template-columns:1fr}}

/* One landscape sheet keeps candidate ranking, eliminated blocks, and six decisions visible together. */
.worksheet-preview-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:20px 24px;border:1px solid var(--line);border-radius:18px;background:#fffefa}.worksheet-preview-actions h2,.worksheet-preview-actions p{margin:0}.worksheet-preview-actions p{color:var(--muted)}.worksheet-preview-actions>div:last-child{display:flex;gap:8px}.team-worksheet{min-width:980px;padding:28px;border:1px solid #aab7ae;background:#fff;color:#14271f;box-shadow:0 16px 36px rgba(17,39,31,.09);font-family:"Apple SD Gothic Neo","Noto Sans KR",sans-serif}.team-worksheet>header{display:grid;grid-template-columns:1.6fr 1fr;align-items:start;gap:24px;margin:0 0 14px;padding:0 0 12px;border-bottom:3px solid #1f6a53}.team-worksheet>header span{color:#1f6a53;font-size:10px;font-weight:900;letter-spacing:.12em}.team-worksheet h1{margin:4px 0;font-size:28px;line-height:1.1;letter-spacing:-.055em}.team-worksheet>header p{margin:0;color:#58665f;font-size:11px}.team-worksheet dl{display:grid;gap:5px;margin:0}.team-worksheet dl div{display:grid;grid-template-columns:48px 1fr;border-bottom:1px solid #aab7ae}.team-worksheet dt{padding:5px;background:#e7efe9;font-size:9px;font-weight:900;text-align:center}.team-worksheet dd{margin:0;padding:5px 8px;font-size:10px}.worksheet-phases{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px}.worksheet-phases div{display:grid;grid-template-columns:auto 1fr;gap:0 8px;padding:8px 10px;border:1px solid #bec8c0;border-radius:8px;background:#f5f6f1}.worksheet-phases b{grid-row:1 / span 2;align-self:center;color:#9b6518;font-size:16px}.worksheet-phases strong{font-size:11px}.worksheet-phases span{color:#68736e;font-size:8px}.worksheet-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.team-worksheet section>h2,.worksheet-decisions>h2{display:flex;align-items:center;gap:7px;margin:0 0 2px;font-size:14px}.team-worksheet section>h2 span{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:#1f6a53;color:#fff;font:900 8px ui-monospace,monospace}.team-worksheet section>p{margin:0 0 6px;color:#68736e;font-size:8px}.team-worksheet table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8.5px}.team-worksheet th,.team-worksheet td{height:24px;padding:3px 5px;border:1px solid #aeb9b0}.team-worksheet th{background:#e7efe9;font-weight:900}.worksheet-grid section:first-child th:nth-child(1){width:38px}.worksheet-grid section:first-child th:nth-child(2){width:54px}.worksheet-grid section:first-child th:nth-child(4){width:92px}.worksheet-grid section:last-child th:first-child{width:48px}.worksheet-grid aside{display:grid;grid-template-columns:repeat(2,1fr);gap:3px 10px;margin-top:7px;padding:7px 9px;border:1px solid #dac890;border-radius:7px;background:#fff7dd;font-size:8px}.worksheet-grid aside b{grid-column:1/-1;color:#76511a}.worksheet-decisions{margin-top:12px}.worksheet-decisions th:first-child{width:48px}.worksheet-decisions th:nth-child(2),.worksheet-decisions th:nth-child(3),.worksheet-decisions th:nth-child(4){width:82px}.team-worksheet>footer{display:grid;grid-template-columns:150px 1fr;gap:10px;margin-top:11px;padding:9px 12px;border:2px solid #1f6a53;border-radius:8px;font-size:10px}.team-worksheet>footer b{color:#1f6a53}.team-worksheet>footer span{border-bottom:1px solid #68736e}@media(max-width:1040px){#worksheetPrintView{overflow-x:auto}.worksheet-preview-actions{position:sticky;left:0;min-width:min(980px,calc(100vw - 52px))}}
/* Fit the screen preview without carrying a scroll container into print. */
#worksheetPrintView{overflow:visible}
.team-worksheet{width:100%;min-width:0}
.team-worksheet>header{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.team-worksheet dd{overflow-wrap:anywhere}
.team-worksheet table{font-size:11px}.team-worksheet tbody td:first-child{font-size:13px;font-weight:800;text-align:center}
.team-worksheet section>p,.worksheet-phases span{font-size:10px}.worksheet-phases strong{font-size:12px}
.reflection-worksheet{width:min(820px,100%);margin:0 auto;padding:34px;border:1px solid #aab7ae;background:#fff;color:#14271f;box-shadow:0 16px 36px rgba(17,39,31,.09);font-family:"Apple SD Gothic Neo","Noto Sans KR",sans-serif}.reflection-worksheet>header{display:grid;grid-template-columns:1fr auto;gap:8px 20px;margin:0 0 18px;padding-bottom:14px;border-bottom:3px solid #1f6a53}.reflection-worksheet>header>span{grid-column:1/-1;color:#9b6518;font:900 10px ui-monospace,"SFMono-Regular",monospace;letter-spacing:.12em}.reflection-worksheet h1{margin:0;font-size:31px;letter-spacing:-.06em;line-height:1.15}.reflection-worksheet>header>p{margin:0;color:#58665f;font-size:12px;line-height:1.55}.reflection-worksheet dl{display:grid;gap:4px;margin:0}.reflection-worksheet dl div{display:grid;grid-template-columns:42px 1fr;border-bottom:1px solid #aab7ae}.reflection-worksheet dt{padding:5px;background:#e7efe9;font-size:9px;font-weight:900;text-align:center}.reflection-worksheet dd{min-width:180px;margin:0;padding:5px 8px;font-size:10px}.reflection-school-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:16px;align-items:center;margin-bottom:16px;padding:16px 18px;border:1px solid #b9d0bf;border-radius:12px;background:#f1f7f1}.reflection-school-result>div>span{display:block;margin-bottom:4px;color:#1f6a53;font-size:10px;font-weight:900}.reflection-school-result h2{margin:0;font-size:20px;letter-spacing:-.045em}.reflection-school-result p{margin:5px 0 0;color:#58665f;font-size:11px;line-height:1.45}.reflection-school-evidence ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none}.reflection-school-evidence li{display:grid;gap:2px;padding:9px;border:1px solid #becdc1;border-radius:8px;background:#fff}.reflection-school-evidence li>b{color:#9b6518;font:900 9px ui-monospace,"SFMono-Regular",monospace}.reflection-school-evidence li>strong{font-size:14px}.reflection-school-evidence li>span{color:#58665f;font-size:9px;line-height:1.35}.reflection-school-evidence>p{margin:0;color:#58665f;font-size:11px}.reflection-prompts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reflection-prompts article{display:grid;grid-template-columns:auto 1fr;gap:0 8px;padding:13px;border:1px solid #bec8c0;border-radius:10px;background:#fff}.reflection-prompts article>b{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#1f6a53;color:#fff;font:900 9px ui-monospace,"SFMono-Regular",monospace}.reflection-prompts h2{margin:3px 0 0;font-size:15px;letter-spacing:-.045em}.reflection-prompts p{grid-column:1/-1;min-height:34px;margin:10px 0 6px;color:#58665f;font-size:10px;line-height:1.45}.reflection-lines{grid-column:1/-1;height:72px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 21px,#bac5bc 22px,transparent 23px)}
@media screen and (max-width:700px){.worksheet-preview-actions{position:static;min-width:0;flex-wrap:wrap}.team-worksheet{padding:16px}.team-worksheet>header{grid-template-columns:1fr;gap:12px}.team-worksheet h1{font-size:24px}#worksheetPrintView .worksheet-grid{grid-template-columns:1fr;gap:18px}.worksheet-grid>section{min-height:112mm}.worksheet-phases{grid-template-columns:1fr}}
@page worksheet{size:A4 landscape;margin:8mm}
@media print{
  body:has(#worksheetPrintView.printing){height:auto;overflow:visible;background:#fff}
  body:has(#worksheetPrintView.printing)>.wrap{width:auto;max-width:none;margin:0;padding:0}
  body:has(#worksheetPrintView.printing)>.wrap::before,body:has(#worksheetPrintView.printing)>.wrap>:not(#worksheetPrintView){display:none!important}
  #worksheetPrintView.printing{display:block!important;page:worksheet;width:281mm;margin:0;padding:0;overflow:visible;animation:none;transform:none}
  #worksheetPrintView.printing .team-worksheet{page:worksheet;width:100%;min-width:0;height:194mm;padding:8mm;border:0;box-shadow:none;break-inside:avoid;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  #worksheetPrintView.printing .worksheet-preview-actions{display:none!important}
  body:has(#reflectionWorksheetView.printing){height:auto;overflow:visible;background:#fff}body:has(#reflectionWorksheetView.printing)>.wrap{width:auto;max-width:none;margin:0;padding:0}body:has(#reflectionWorksheetView.printing)>.wrap::before,body:has(#reflectionWorksheetView.printing)>.wrap>:not(#reflectionWorksheetView){display:none!important}#reflectionWorksheetView.printing{display:block!important;page:reflection;width:194mm;margin:0;padding:0;overflow:visible;animation:none;transform:none}#reflectionWorksheetView.printing .reflection-worksheet{page:reflection;width:100%;min-height:281mm;padding:8mm;border:0;box-shadow:none;break-inside:avoid;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}#reflectionWorksheetView.printing .worksheet-preview-actions{display:none!important}
}
@page reflection{size:A4 portrait;margin:8mm}
@media(max-width:700px){.reflection-worksheet{padding:18px}.reflection-worksheet>header,.reflection-school-result,.reflection-prompts{grid-template-columns:1fr}.reflection-worksheet dl{grid-row:auto}.reflection-school-evidence ol{grid-template-columns:1fr}.reflection-prompts{gap:10px}}

/* Keep the main ranking table as the worksheet's full-height writing area. */
.worksheet-grid{grid-template-columns:1.25fr .75fr;min-height:112mm;align-items:stretch}.worksheet-grid>section{display:grid;grid-template-rows:auto auto 1fr}.worksheet-grid>section table{height:100%}.worksheet-grid section:first-child th:nth-child(3){width:auto}
.worksheet-grid section:first-child th:nth-child(1){width:52px}.worksheet-grid section:first-child th:nth-child(2){width:165px}
.evidence-step header{display:flex;align-items:center}
.grid-balance-map .answer-country-borders{stroke:#526f6a;stroke-width:1.15;stroke-dasharray:2 1;opacity:.72}.grid-balance-map .answer-coastline{stroke:#496b68;stroke-width:1.9;opacity:.82}.grid-balance-map .answer-cell{stroke:rgba(255,255,255,.58);stroke-width:.9}

/* The status-bar shortcut opens a read-only map and a scan-friendly pick history. */
.session-status .session-selected-blocks{margin-left:auto;padding:8px 12px;color:var(--green);white-space:nowrap}.session-status .session-selected-blocks:disabled{opacity:.45;cursor:not-allowed}.session-status #sessionTeam{margin-left:0}.selected-blocks-dialog{box-sizing:border-box;width:min(1240px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:24px;overflow:auto;border:1px solid var(--line);border-radius:24px;background:#f5f3e9;color:var(--text);box-shadow:0 28px 90px rgba(17,39,31,.32)}.selected-blocks-dialog::backdrop{background:rgba(17,39,31,.7);backdrop-filter:blur(5px)}.selected-blocks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.selected-blocks-head span{color:var(--green);font-size:11px;font-weight:900;letter-spacing:.12em}.selected-blocks-head h2{margin:4px 0;font-size:clamp(28px,4vw,46px);letter-spacing:-.06em}.selected-blocks-head p{margin:0;color:var(--muted);font-size:13px;font-weight:800}.selected-blocks-map{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#cbe3f1}.selected-blocks-map svg{display:block;width:100%;height:auto;pointer-events:none}.selected-blocks-list{margin-top:18px}.selected-blocks-list h3{margin:0 0 10px;font-size:20px}.selected-blocks-list>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.selected-blocks-list article{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;padding:12px;border:1px solid var(--line);border-top:5px solid var(--team);border-radius:13px;background:#fffefa}.selected-blocks-list article span{grid-row:1 / span 2;display:grid;place-items:center;min-width:34px;min-height:34px;border-radius:9px;background:color-mix(in srgb,var(--team) 16%,white);font-size:12px;font-weight:900}.selected-blocks-list article b{font-size:17px}.selected-blocks-list article strong{color:var(--green);font-size:13px}.selected-blocks-list article small{grid-column:2;color:var(--muted);font-size:11px;font-weight:800}@media(max-width:700px){.session-status .session-selected-blocks{order:4;margin-left:0}.selected-blocks-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px}.selected-blocks-head h2{font-size:27px}.selected-blocks-head .secondary{padding:9px 12px}.selected-blocks-list>div{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-blocks-list article{padding:10px}.selected-blocks-list article b{font-size:15px}}

.entry-privacy a,.legal-footer a{color:#17664f;font-weight:800}.legal-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1180px;margin:42px auto 0;padding:18px 0 32px;border-top:1px solid rgba(17,39,31,.18);color:#748078}.legal-footer p{margin:0;font:800 10px ui-monospace,"SFMono-Regular",monospace;letter-spacing:.14em;text-transform:uppercase}.legal-footer nav{display:flex;align-items:center;gap:0}.legal-footer a{padding:4px 12px;font-size:12px;text-decoration:none}.legal-footer a+a{border-left:1px solid rgba(17,39,31,.16)}.legal-footer a:hover{text-decoration:underline}.legal-footer a:focus-visible{outline:3px solid rgba(239,181,66,.42);outline-offset:2px;border-radius:4px}@media(max-width:600px){.legal-footer{align-items:flex-start;flex-direction:column;gap:10px;margin:30px 20px 0;padding:16px 0 24px}.legal-footer a:first-child{padding-left:0}.legal-footer a:last-child{padding-right:0}}
