#pageMap[hidden]{display:none}body.map-open{background:#edf1ed;overflow:hidden}body.map-open #appRoot,body.map-open #studioWelcome{display:none!important}body.map-open{--editor-height:145px}body.map-open #authoringStudio{width:420px;top:var(--editor-height);position:fixed;bottom:0}body.map-open.studio-open #pageMap{left:420px}
.page-map{position:fixed;inset:var(--editor-height) 0 0;z-index:70;display:flex;flex-direction:column;color:#234c43;background:#f8faf6;font:13px/1.5 var(--font-ui),Arial,sans-serif;min-width:0}
.page-map button{font:inherit;color:inherit;border:1px solid #c6d7ce;background:#fff;border-radius:7px;padding:9px 12px;cursor:pointer}.page-map button:hover{background:#e9f1eb;border-color:#5e8a76}.page-map button:disabled{opacity:.45;cursor:default}.page-map button:focus-visible,.page-map select:focus-visible,.page-map input:focus-visible,.map-edge-hit:focus-visible{outline:3px solid #d2a44f;outline-offset:2px}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 26px 14px;border-bottom:1px solid #dce4db}.map-eyebrow{display:block;font-size:10px;letter-spacing:.17em;font-weight:700;color:#688271}.map-heading h1{font:500 30px/1.2 var(--font-display),Georgia,serif;margin:5px 0}.map-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.page-map .map-primary{background:#1c6152;color:white;border-color:#1c6152}.page-map .map-gold{background:#e7c47b;border-color:#e0bb6c;color:#24463a;font-weight:650}.map-filters{padding:12px 26px;display:flex;align-items:end;gap:14px;border-bottom:1px solid #dce4db;background:#fff}.map-filters label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:650;color:#687b70;letter-spacing:.03em;min-width:0}.map-filters select,.map-filters input{font:12px var(--font-ui),Arial,sans-serif;padding:9px;border:1px solid #cedbd3;border-radius:6px;color:#234c43;background:#fafcf9;min-width:0;max-width:220px}.map-search{flex:1}.map-search input{width:100%;max-width:310px}.map-count{font-size:11px;color:#63796a;white-space:nowrap;padding-bottom:7px}.map-workspace{flex:1;min-height:0;position:relative;display:flex}.map-viewport{flex:1;min-width:0;overflow:auto;position:relative;background-color:#eef2ed;background-image:radial-gradient(#b9cbbd 1px,transparent 1px);background-size:22px 22px;overscroll-behavior:contain;touch-action:none}.map-viewport::after{content:'';display:block;width:var(--map-world-width,1100px);height:var(--map-world-height,700px);pointer-events:none}.map-world{position:absolute;left:0;top:0;transform-origin:0 0}.map-cards{position:absolute;inset:0;pointer-events:none}.map-card{box-sizing:border-box;position:absolute;width:260px;height:146px;border:1px solid #c6d4c7;border-top:4px solid #568575;background:#fffefa;border-radius:10px;box-shadow:0 3px 10px #244c3410;pointer-events:auto;transition:box-shadow .15s}.map-card[data-kind=review]{border-top-color:#bc8a51;background:#fffaf1}.map-card[data-kind=practice]{border-top-color:#6785a6}.map-card[data-kind=navigation]{border-top-color:#9687ae}.map-card.selected{box-shadow:0 0 0 3px #32765f55,0 5px 18px #22432e18}.map-card.pending{border-left:3px solid #d0a54d}.map-card-top{display:flex;align-items:center;justify-content:space-between;padding:6px 12px 0}.map-type{text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:.12em;color:#6f8474}.page-map .map-grip{border:0;padding:0 4px;font-size:22px;line-height:20px;color:#91a08e;cursor:grab;background:transparent;touch-action:none}.page-map .map-card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;border:0;padding:5px 14px 0;background:transparent;text-align:left;font:600 15px/1.25 var(--font-ui),Arial,sans-serif;width:100%;height:44px;border-radius:0;color:#294d3f}.page-map .map-card-title:hover{color:#167464;text-decoration:underline}.map-section{display:block;margin:3px 14px 0;font-size:10px;color:#859080;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-card-foot{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:9px}.map-badge{font-weight:600;color:#537565}.map-pending{color:#9b7628}.page-map .map-port{position:absolute;top:61px;width:16px;height:16px;min-width:16px;padding:0;background:#fff;border:3px solid #518878;border-radius:50%;z-index:3;touch-action:none}.page-map .map-input{left:-9px}.page-map .map-output{right:-9px;background:#518878}.page-map .map-port:hover{box-shadow:0 0 0 5px #51887833}.page-map .map-card-connections{position:absolute;bottom:4px;right:8px;padding:2px 3px;font-size:9px;border:0;background:transparent;color:#3c7967}.map-lines{position:absolute;left:0;top:0;overflow:visible}.map-edge>path{stroke:#367b72;stroke-width:2}.map-edge.review>path{stroke:#ad793d}.map-edge.automatic>path{stroke:#88919d;stroke-dasharray:5 6}.map-edge>path.map-edge-hit{stroke:transparent;stroke-width:18;cursor:pointer;pointer-events:stroke}.map-edge text{font:10px var(--font-ui),Arial,sans-serif;fill:#627e6c;paint-order:stroke;stroke:#eef2ed;stroke-width:5px;cursor:pointer}.map-edge:hover>path:not(.map-edge-hit){stroke-width:4}.map-zoom{position:absolute;bottom:16px;left:20px;display:flex;align-items:center;gap:2px;padding:4px;background:#fffffff5;border:1px solid #cbd8cc;border-radius:9px;box-shadow:0 3px 10px #244c3414}.map-zoom button{border:0;background:transparent;padding:6px 10px;font-size:12px}.map-zoom output{font-size:10px;min-width:34px;text-align:center}.map-footer{display:flex;justify-content:space-between;gap:12px;padding:10px 26px 3px;font-size:10px;color:#728171}.map-footer i{display:inline-block;vertical-align:middle;width:18px;height:2px;margin:0 5px 0 10px;background:#367b72}.map-footer i.review{background:#ad793d}.map-footer i.automatic{background:repeating-linear-gradient(90deg,#88919d 0 4px,transparent 4px 6px)}.map-hint{font-size:11px;color:#728171;margin:4px 26px 10px}.map-empty{position:sticky;top:100px;left:40px;padding:30px;text-align:center;color:#567560;font-size:15px}.map-inspector{box-sizing:border-box;flex:0 0 270px;width:270px;background:#fffef9;border-left:1px solid #d2decf;padding:18px;overflow:auto;z-index:4}.map-inspector[hidden]{display:none}.map-inspector-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.map-inspector h2{font:600 22px/1.2 var(--font-display),Georgia,serif;margin:0 0 16px}.map-inspector h3{font-size:12px;margin:24px 0 12px}.map-inspector .map-inspector-close{border:0;background:none;padding:0 7px;font-size:20px;align-self:flex-start}.map-inspector>button{display:block;width:100%;margin:10px 0;text-align:left}.map-inspector p{margin:10px 0 18px}.map-from{font-weight:650}.map-when{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#8e7445}.map-muted{font-size:11px;color:#788271}.map-field{display:block;margin:18px 0}.map-field>span{display:block;font-size:11px;font-weight:650;margin-bottom:7px}.map-field select{width:100%;font:12px/1.4 var(--font-ui),Arial,sans-serif;padding:10px 6px;border:1px solid #c8d7ca;border-radius:5px;background:white;color:#345842}.page-map .map-danger{color:#955746}.map-connection-row{font-size:11px!important;overflow-wrap:anywhere}.map-review-dialog{width:min(650px,calc(100% - 40px));max-height:85vh;overflow:auto;box-sizing:border-box;border:1px solid #c8d7cb;border-radius:12px;padding:26px;color:#264c3e;font:14px/1.6 var(--font-ui),Arial,sans-serif;background:#fffef8}.map-review-dialog::backdrop{background:#123d3466}.map-review-dialog h2{font:600 28px var(--font-display),Georgia,serif;margin:0 0 12px}.map-review-dialog li{margin:9px 0}.map-review-dialog button{font:inherit;border:1px solid #b9cdbd;border-radius:6px;padding:9px 14px;background:#fff;color:#264c3e;cursor:pointer;margin:12px 8px 0 0}.map-review-dialog .map-confirm{background:#1c6152;color:#fff}.map-review-dialog .map-error{color:#9a4835}
#editorMap[aria-pressed=true]{background:#e7c47b;color:#24463a}
@media(max-width:1150px){body.map-open.studio-open #pageMap{left:365px}body.map-open #authoringStudio{width:365px}.map-heading{padding:12px 18px}.map-heading h1{font-size:25px}.map-actions button{font-size:11px;padding:8px}.map-count{display:none}.map-filters{padding:10px 18px}.map-inspector{position:absolute;right:0;top:0;bottom:0;box-shadow:-4px 0 20px #203d3220}.map-heading{flex-wrap:wrap}.map-actions{justify-content:flex-start}.map-footer{padding-left:18px;font-size:9px}.map-hint{margin-left:18px}.map-filters select{max-width:160px}}
@media(max-width:760px){body.map-open.studio-open #pageMap{left:0;visibility:hidden}body.map-open.studio-open #authoringStudio{width:100%;max-height:none;z-index:90}.map-heading h1{font-size:24px}.map-filters{flex-wrap:wrap;gap:8px}.map-search{flex-basis:100%}.map-search input{max-width:none}.map-footer{flex-direction:column;gap:4px}.map-hint{display:none}.map-zoom{left:10px}.map-actions button{font-size:10px}body.map-open #editorBar{position:sticky!important}}

.map-footer button{font-size:10px;padding:0 4px;border:0;background:none;text-decoration:underline}.map-save-status{max-width:55%;white-space:pre-line}
body.map-open:not(.studio-open) #editorNew,body.map-open:not(.studio-open) #editorDuplicate,body.map-open:not(.studio-open) #editorSave,body.map-open:not(.studio-open) #editorPublish,body.map-open:not(.studio-open) #editorFlagCleanup,body.map-open:not(.studio-open) #editorWithhold,body.map-open:not(.studio-open) #editorNext,body.map-open:not(.studio-open) #editorDiscard,body.map-open:not(.studio-open) #editorLiveLink,body.map-open:not(.studio-open) #editorState,body.map-open:not(.studio-open) #editorPage{display:none}


/* Page type colors are paired with labels in cards and the unscaled legend. */
.page-map [data-kind=lesson]{--page-color:#275e9b;--page-tint:#edf5ff}
.page-map [data-kind=simple]{--page-color:#166b57;--page-tint:#eaf8f1}
.page-map [data-kind=practice]{--page-color:#896116;--page-tint:#fff7e2}
.page-map [data-kind=advanced]{--page-color:#70469b;--page-tint:#f5effc}
.page-map [data-kind=assessment]{--page-color:#a64042;--page-tint:#fff0ef}
.page-map [data-kind=navigation]{--page-color:#53616a;--page-tint:#f0f3f5}
.map-card[data-kind]{border-top-color:var(--page-color);background:var(--page-tint)}.map-card .map-type{color:var(--page-color);letter-spacing:.04em}.map-type-legend{display:flex;flex-wrap:wrap;gap:6px 18px;padding:8px 26px;background:#fff;border-bottom:1px solid #dce4db;font-size:11px}.map-type-legend>span{display:inline-flex;align-items:center;gap:6px;color:var(--page-color)}.map-type-legend i{width:10px;height:10px;display:inline-block;border-radius:3px;background:var(--page-color)}
