/* One compact shared labeller shell. Existing application ownership unchanged. */
.dlv-shell{box-sizing:border-box;width:100%;max-width:1100px;margin:0 auto;color:#17212b;font:16px/1.35 system-ui,sans-serif}.dlv-shell *{box-sizing:border-box}.dlv-instruction{margin:4px 0 9px}.dlv-stage.dl-stage{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(170px,240px);gap:14px;align-items:stretch}.dlv-work{min-width:0;display:flex;flex-direction:column;border:1px solid #c5cdd7;border-radius:8px;overflow:hidden;background:#fff}.dlv-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:0;padding:0 6px;background:#f2f5f8}.dlv-toolbar:not(:empty){padding:5px 6px;min-height:42px}.dlv-board{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;height:clamp(330px,55vh,520px);min-width:0;background:#fff}.dlv-side{margin:0!important;min-width:0;max-height:590px;overflow:auto;border:1px solid #c5cdd7;border-radius:8px;padding:10px!important;display:block!important}.dlv-bank-title{font-size:17px;margin:0 0 8px}.dlv-bank .dlu-root{margin:0;padding:0;border:0;background:transparent}.dlv-bank .dlu-bank{display:flex;flex-direction:column;gap:8px}.dlv-bank .dlu-choice{width:100%;min-height:42px;text-align:left;font-size:15px;padding:8px 10px;white-space:normal}.dlv-bank .dlu-choice[aria-pressed=true]{outline:3px solid #176bbb;outline-offset:1px}.dlv-bank .dlu-root>p[hidden]{display:none!important}.dlv-remove{margin-top:8px;font-size:14px}.dlv-footer{padding-top:9px}.dlv-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dlv-actions [hidden],.dlv-shell [hidden]{display:none!important}.dlv-feedback{font-size:15px;max-height:160px;overflow:auto}.dlv-feedback .li-result,.dlv-feedback .dl-callout{margin:7px 0;padding:8px}.dlv-notes{margin-top:5px}.dlv-notes p{margin:6px 0}.dlv-credit{font-size:12px;margin-top:5px}.dlv-credit p{max-height:100px;overflow:auto;margin:4px 0}.dlv-parts{position:relative}.dlv-parts>fieldset{position:absolute;z-index:20;top:100%;left:0;min-width:240px;background:#fff;box-shadow:0 2px 10px #0003;padding:10px;max-height:220px;overflow:auto}.dlv-parts label{display:flex;gap:6px;align-items:center;margin:6px 0;font-size:14px}.dlv-parts legend{font-size:13px}.dlv-frame-title{flex:1;text-align:center;font-size:14px}.dlv-gesture-hint{font-size:12px;color:#405366}.dlv-zoom{font-size:12px}.dlv-image-plane{position:relative;flex:none;max-width:100%;max-height:100%}.dlv-image{width:100%;height:100%;display:block;object-fit:contain}.dlv-label{position:absolute;transform:translate(-50%,-50%);display:flex;width:max-content;max-width:185px;z-index:3;border:1px solid #526778;border-radius:6px;background:#fff;box-shadow:0 1px 3px #0002}.dlv-target{text-align:left;overflow-wrap:normal;word-break:normal}.dlv-target[aria-pressed=true]{outline:3px solid #1975c8}.dlv-label[data-mark=right]{border:2px solid #21843b}.dlv-label[data-mark=wrong]{border:2px solid #b32c33}.dlv-target-remove{font-weight:bold}.dlv-native-diagram{width:100%;height:100%;max-width:100%;max-height:100%;margin:0!important;object-fit:contain}.dlv-board .dm-surface{width:100%;height:100%;margin:0!important;padding:0;border:0;background:transparent}.dlv-board .dm-surface>.dm-stage{height:100%;width:100%;min-height:0;max-height:none;aspect-ratio:auto}.dlv-board .dm-anchor{max-width:min(150px,calc(100% - 8px));word-break:normal;overflow-wrap:normal;width:max-content}.dlv-backing{display:none!important}.dlv-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.dlv-shell summary:focus-visible,.dlv-shell [role=group]:focus-visible{outline:3px solid #1975c8;outline-offset:2px}@media(max-width:700px){.dlv-stage.dl-stage{grid-template-columns:minmax(0,1fr) 165px;gap:8px}.dlv-side{padding:7px!important}.dlv-gesture-hint{display:none}.dlv-board{height:400px}.dlv-label{max-width:135px}}

.dlv-host{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}.dlv-legacy-stage.dl-stage{display:block!important}.dlv-ste-container{width:100%;min-width:0}.dlv-native-diagram.dl-diagram{flex:none;min-height:0!important;max-height:100%;height:100%;width:auto;max-width:100%;aspect-ratio:1/1}

.dlv-unanchored-target{position:static;transform:none;max-width:160px}.dlv-native-diagram>svg{max-width:100%;max-height:100%}

.dlv-native-diagram [role=button][aria-pressed=true]{outline:3px solid #1975c8;outline-offset:2px}.dlv-board{touch-action:none}

.dlv-stage.dl-stage{grid-template-areas:"work bank"!important;grid-template-rows:auto!important}.dlv-work{grid-area:work}.dlv-side{grid-area:bank!important}.dlv-native-diagram.dl-diagram{grid-area:auto!important}.dlv-board .dm-surface>.dm-stage{display:block;margin:0;border:0;border-radius:0}.dlv-shell[data-readonly=true] .dlv-side{display:none!important}.dlv-shell[data-readonly=true] .dlv-stage.dl-stage{grid-template-columns:1fr!important;grid-template-areas:"work"!important}

.dlv-legacy-stage>.sd-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

/* Authored instructions stay visible in the shell; only their original empty header loses spacing. */
.dlv-header-adopted{margin-bottom:0!important;padding-block:0!important;min-height:0!important}.dlv-instruction{max-height:5.4em;overflow:auto;line-height:1.35}.dlv-instruction>.activity-instructions{margin:0!important;padding:0!important}.dlv-view-notice{margin:5px 0;font-size:13px}

/* Existing activity controls and STE label-card treatment; drag is the primary placement gesture. */
.dlv-shell{font-family:'Nunito',system-ui,sans-serif}.dlv-bank .dlu-choice,.dlu-drag-ghost{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,#fff,#f3f7fb);border:1.5px solid #cbd5e1;border-radius:999px;padding:8px 16px 8px 13px;font-family:'Nunito',system-ui,sans-serif;font-weight:800;color:#1f2a37;cursor:grab;user-select:none;touch-action:none;box-shadow:0 2px 6px rgba(15,42,80,.14)}.dlv-bank .dlu-choice::before{content:'\f58e';font-family:'Font Awesome 6 Free';font-weight:900;color:#94a3b8}.dlv-bank .dlu-choice:active{cursor:grabbing}.dlv-bank .dlu-choice.dlu-dragging{opacity:.35}.dlu-drag-ghost{max-width:240px;white-space:normal;cursor:grabbing;pointer-events:none}.dlv-label[data-drop-hover=true]{outline:3px solid #3949ab;outline-offset:3px;background:#eef2ff}.dlv-credit summary{cursor:pointer;text-decoration:underline}.dlv-credit a{color:inherit;text-decoration:underline}

/* Buttons inherit the actual STE/maths-activity.css rules without local restyling.
 * Mesh anchors retain projection positioning only; these two !important repairs
 * cancel diagram-mesh.css compact overrides using the exact canonical values. */
.dlv-shell .dm-stage .dm-anchor.btn-control{padding:.55rem 1rem!important;min-height:44px!important;min-width:48px;transform:translate(-50%,-50%)}
.dlv-shell .dm-anchor[data-mark=right]{border-color:#127243}.dlv-shell .dm-anchor[data-mark=wrong]{border-color:#ad3131}
.maths-activity .dlv-shell button:focus-visible{outline:3px solid #1F4E8C;outline-offset:2px}
.dlv-bank .dlu-root>button{margin-top:8px}
@media(pointer:coarse){.dlv-shell .dm-stage .dm-anchor.btn-control{min-height:48px!important}}
@media(min-width:1500px) and (min-height:760px){html:not(.mcr-compete) body.maths-activity:not(.display-mode):not([data-display-mode="true"]) .dlv-shell .dm-stage .dm-anchor.btn-control{min-height:64px!important}}

/* Match canonical button UA line-height; generic mesh/bank font:inherit must not replace it. */
.dlv-shell .btn-control,.dlv-shell .btn-primary-activity{line-height:normal}

/* Generic bank disabled opacity must not override the canonical control role. */
.dlv-shell .btn-control:disabled{opacity:1}
