.dg-views { position: relative; }
.dg-wrap.plant-ready { display: block; padding: 0; aspect-ratio: auto; overflow: visible; background: none; border: 0; }
.dg-wrap.plant-ready::before { display: none; }
.dg-wrap.plant-ready > :not(.plant-preview), .dg-views.plant-ready > .dg-wrap { display: none !important; }
.dg-views.plant-ready { display: block; border: 0; background: none; }
.plant-ready ~ .dg-list { display: none !important; }
.dg-wrap.plant-waiting { display: block; padding: 0; aspect-ratio: auto; overflow: visible; background: none; border: 0; }
.dg-wrap.plant-waiting::before { display: none; }
.dg-views.plant-waiting { display: block; border: 0; background: none; }
.dg-wrap.plant-waiting > :not(.plant-preview), .dg-views.plant-waiting > .dg-wrap {
    position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important;
    overflow: hidden !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important;
}
.plant-waiting ~ .dg-list { display: none !important; }
.plant-still { position: absolute; inset: 0; z-index: 1; display: block; width: 100%; height: 100%; object-fit: cover; pointer-events: none; mix-blend-mode: plus-lighter; }
.plant-preview--still .plant-canvas { isolation: isolate; }
.plant-preview--still .plant-canvas canvas { opacity: 0; }
.plant-preview--still.plant-preview--under .plant-canvas canvas { opacity: .02; }
.plant-preview--still.plant-preview--under .plant-still { opacity: .98; }
.plant-still--desk { transition: opacity .2s ease; }
.plant-still--arriving, .plant-still[data-off] { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .plant-still--desk { transition: none; } }
.plant-preview { width: 100%; min-width: 0; position: relative; color: var(--plat-200); text-align: left; }
.plant-preview--loading { position: absolute; inset: 0; opacity: 0; visibility: hidden; pointer-events: none; }
.plant-preview [hidden] { display: none !important; }
.plant-drawing { position: relative; }
.plant-stage { position: relative; aspect-ratio: 2.35; overflow: hidden; isolation: isolate; background: none; }
.plant-stage .anim-field--plant, .dg-still .anim-field--plant { mask-image: radial-gradient(ellipse at 50% 48%,#000 28%,transparent 72%); }
.plant-canvas { position: absolute; inset: 0; z-index: 1; pointer-events: auto; }
.plant-canvas canvas { display: block; width: 100%; height: 100%; pointer-events: auto; cursor: grab; touch-action: none; outline-offset: -3px; }
.plant-canvas canvas:active { cursor: grabbing; }
.plant-canvas canvas:focus-visible { outline: 2px solid var(--btc-300); }
.plant-leaders { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; }
.plant-lead { stroke: rgba(229,228,226,.24); stroke-width: .9; vector-effect: non-scaling-stroke; }
.plant-lead.is-hot { stroke: var(--btc-300); stroke-width: 1.3; }
.plant-dot { fill: var(--btc-300); }
.plant-callouts { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.plant-callout { position: absolute; transform: translateY(-50%); width: 17.2%; min-height: 44px; padding: 11px 13px;
    border: 1px solid var(--line-mid); border-radius: 0; background: rgba(0,0,0,.72); backdrop-filter: blur(3px);
    color: var(--plat-200); cursor: pointer; pointer-events: auto; text-align: left; }
.plant-callout--l { right: 80.47%; text-align: right; }
.plant-callout--r { left: 80.47%; }
.plant-c-title { display: block; font: clamp(9px,.83vw,11px)/1.45 var(--mono); letter-spacing: .12em;
    text-transform: uppercase; margin-bottom: 5px; color: var(--plat-200); }
.plant-c-desc { display: block; font-size: clamp(10.5px,.94vw,12.5px); line-height: 1.42; color: var(--plat-400); }
.plant-callout.is-hot, .plant-callout:focus-visible { border-color: var(--btc-300); background: rgba(26,19,10,.9); }
.plant-callout.is-hot .plant-c-title { color: var(--btc-200); }
.plant-caption { position: absolute; left: 21%; right: 21%; top: 14px; z-index: 2; display: flex; justify-content: space-between;
    gap: 10px; pointer-events: none; color: var(--plat-500); font: 9px/1.5 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.plant-toolbar { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 6px; padding: 0 14px 14px; }
.plant-tools { display: contents; }
.plant-equipment, .plant-toolbar .plant-tools-toggle { display: none; }
.plant-hint { order: -2; }
.plant-tools [data-plant="power"] { order: -1; }
.plant-hint { margin: 0 auto 0 0; color: var(--plat-500); font: 10px/1.6 var(--mono); }
.plant-toolbar button { border: 1px solid var(--line-mid); border-radius: 0; background: rgba(0,0,0,.6);
    min-height: 36px; padding: 7px 11px; color: var(--plat-300); font: 10px/1.5 var(--mono); cursor: pointer; }
.plant-toolbar button[aria-pressed="true"] { color: var(--btc-300); border-color: var(--line-btc); }
.plant-toolbar button:hover:not(:disabled) { border-color: var(--btc-300); color: var(--btc-300); }
.plant-toolbar button:disabled { opacity: .32; cursor: default; }
.plant-toolbar [data-plant="inspect"] { min-height: 48px; padding: 12px 16px; font-size: 11px; border-color: var(--line-btc); }
.plant-toolbar [data-plant="power"] { min-height: 48px; color: var(--btc-300); border-color: var(--line-btc); }
.plant-toolbar [data-plant="power"][aria-pressed="true"] { background: rgba(247,147,26,.12); }
.plant-toolbar [data-plant="xray"] {
    min-height: 48px; min-width: 148px; padding: 12px 23px; color: #241304; font-size: 12px; font-weight: 700; letter-spacing: .06em;
    border: 1px solid #ffbe6c; border-bottom-color: #a85f18;
    background: linear-gradient(115deg,transparent 25%,rgba(255,242,209,.42) 47%,transparent 65%),linear-gradient(180deg,#ffd18c 0%,#efa14a 37%,#d98222 52%,#f6ac54 100%);
    box-shadow: inset 0 1px 0 #ffe2b3,inset 0 -2px 0 rgba(88,41,0,.25),0 3px 15px rgba(247,147,26,.13);
}
.plant-toolbar [data-plant="xray"][aria-pressed="true"] { color: #201000; border-color: #ffdc9e; box-shadow: inset 0 1px 0 #ffe2b3,0 0 0 2px rgba(247,147,26,.24),0 3px 20px rgba(247,147,26,.25); }
.plant-toolbar [data-plant="xray"]:hover:not(:disabled) { color: #201000; border-color: #ffe0ad; filter: brightness(1.1); }
.plant-preview button:focus-visible { outline: 2px solid var(--btc-300); outline-offset: 3px; }
.plant-note { margin: 0; padding: 0 16px 16px; color: var(--plat-400); font: 10px/1.7 var(--mono); }
@media (max-width: 900px) {
    .plant-preview { display: flex; flex-direction: column; }
    .plant-drawing { display: contents; }
    .plant-stage { order: 0; aspect-ratio: auto; height: clamp(290px,64vw,450px); }
    .plant-caption { left: 15px; right: 15px; }
    .plant-leaders { display: none; }
    .plant-toolbar { order: 1; justify-content: flex-start; padding-top: 6px; }
    .plant-toolbar button { min-height: 44px; }
    .plant-hint { flex-basis: 100%; margin-bottom: 6px; }
    .plant-callouts { position: static; order: 3; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 0 14px 16px; }
    .plant-callout { position: static; transform: none; width: auto; text-align: left; min-height: 84px; }
    .plant-c-title { font-size: 10px; }
    .plant-c-desc { font-size: 12px; }
    .plant-note { order: 4; }
}
@media (prefers-reduced-motion: reduce) { .plant-callout { transition: none; } }

.dg-wrap.is-still { border: 0; background: none; }
.dg-wrap.is-still::before { display: none; }
.dg-still { position: relative; aspect-ratio: 1920 / 816; isolation: isolate; }
.dg-still-img { position: absolute; inset: 0; z-index: 1; display: block; width: 100%; height: 100%; object-fit: contain; }
.dg-still-leads { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; pointer-events: none; }
.dg-still-img:focus-visible { outline: 1px solid var(--btc-300); outline-offset: -2px; }
.dg-wrap.is-still .dg-callout {
    border-color: rgba(229,228,226,.18); border-radius: 9px;
    background: linear-gradient(135deg,rgba(229,228,226,.07),rgba(229,228,226,.015)),rgba(9,10,11,.94);
    box-shadow: 0 6px 18px rgba(0,0,0,.15);
}
.dg-wrap.is-still .dg-c-title { font: 600 clamp(10.5px,.85vw,12.5px)/1.4 var(--sans); letter-spacing: 0; text-transform: none; color: var(--plat-100); }
.dg-wrap.is-still .dg-c-desc { color: var(--plat-300); }
.dg-wrap.is-still .dg-callout.is-hot, .dg-wrap.is-still .dg-callout:focus-visible {
    border-color: var(--btc-300); background: linear-gradient(135deg,rgba(247,147,26,.13),rgba(247,147,26,.025)),rgba(11,12,13,1);
}
.dg-wrap.is-still .dg-callout.is-hot .dg-c-title { color: var(--btc-200); }
@media (max-width: 900px), (pointer: coarse) {
    .dg-still { grid-column: 1 / -1; order: 0; aspect-ratio: 3 / 2; }
    .dg-still.dg-still--phone { aspect-ratio: 6 / 5; }
    .dg-still-img { object-fit: cover; }
    .dg-still-leads { display: none; }
}

@media (min-width: 701px) {
    #inside, #the-pad, #inside-container { --max-dg: 1720px; }
    .dg-wrap.plant-ready, .dg-views.plant-ready, .dg-wrap.plant-waiting, .dg-views.plant-waiting {
        border: 0; border-radius: 0; overflow: visible; background: none;
    }
    .plant-callout {
        border-color: rgba(229,228,226,.18); border-radius: 9px;
        background: linear-gradient(135deg,rgba(229,228,226,.07),rgba(229,228,226,.015)),rgba(9,10,11,.94);
        box-shadow: 0 6px 18px rgba(0,0,0,.15);
    }
    .plant-c-title { font: 600 clamp(10.5px,.85vw,12.5px)/1.4 var(--sans); letter-spacing: 0; text-transform: none; color: var(--plat-100); }
    .plant-c-desc { color: var(--plat-300); }
    .plant-callout.is-hot, .plant-callout:focus-visible {
        border-color: var(--btc-300); background: linear-gradient(135deg,rgba(247,147,26,.13),rgba(247,147,26,.025)),#0b0c0d;
    }
    .plant-caption { color: var(--plat-400); font: 11px/1.4 var(--sans); text-transform: none; letter-spacing: 0; }
    .plant-stage .scene-gesture-hint { background: transparent; color: var(--plat-400); font: 11px/1.4 var(--sans); }
    .plant-hint { display: none; }
    .plant-toolbar { justify-content: center; gap: 8px; padding: 12px 18px; border: 0; background: none; }
    .plant-toolbar button, .plant-toolbar [data-plant="inspect"],
    .plant-toolbar [data-plant="power"], .plant-toolbar [data-plant="xray"] {
        min-height: 44px; min-width: 44px; padding: 10px 16px; border-radius: 7px;
        font: 500 12px/1.4 var(--sans); letter-spacing: 0;
        border: 1px solid rgba(229,228,226,.15); background: rgba(229,228,226,.04);
        color: var(--plat-200); box-shadow: none;
    }
    .plant-toolbar [data-plant="inspect"] { color: var(--btc-200); border-color: rgba(247,147,26,.28); background: rgba(247,147,26,.07); }
    .plant-toolbar [data-plant="xray"][aria-pressed="true"] {
        color: var(--btc-200); border-color: rgba(247,147,26,.45); background: rgba(247,147,26,.12); box-shadow: none;
    }
    .plant-toolbar [data-plant="xray"]:hover:not(:disabled) { color: var(--plat-100); border-color: var(--line-btc); filter: none; }
    .plant-note { padding: 0 18px 14px; font: 12px/1.5 var(--sans); }
    .dg-toggle { border: 0; border-bottom: 1px solid var(--line-mid); margin-bottom: 16px; }
    .dg-toggle > * { min-height: 44px; padding: 10px 18px; font: 500 13px/1.4 var(--sans); letter-spacing: 0; text-transform: none; }
    .dg-toggle > * + * { border-left: 0; }
    .dg-toggle .dg-toggle-on { color: var(--btc-200); background: none; box-shadow: 0 2px var(--btc-300); }
}

@media (min-width: 901px) and (max-width: 1100px) {
    .plant-stage { width: 100%; min-height: 400px; }
    .plant-callout { padding: 9px 10px; }
}

@media (max-width: 700px) {
    .wrap > .dg-wrap.plant-ready, .wrap > .dg-views.plant-ready,
    .mb-site-preview > .dg-fuel-pane > .dg-views.plant-ready,
    .wrap > .dg-wrap.plant-waiting, .wrap > .dg-views.plant-waiting,
    .mb-site-preview > .dg-fuel-pane > .dg-views.plant-waiting {
        --dg-w: 100%; width: 100%; margin-inline: 0;
        border: 0; border-radius: 0; overflow: visible; background: none;
    }
    .plant-stage { width: calc(100% + var(--gut) * 2); margin-inline: calc(-1 * var(--gut));
        height: auto; max-height: 460px; aspect-ratio: 6 / 5; background: none; }
    .plant-caption { top: 12px; left: 14px; right: 14px; justify-content: flex-end;
        font: 11px/1.4 var(--sans); text-transform: none; letter-spacing: 0; }
    .plant-caption [data-plant="cooling"] { display: none; }
    .plant-stage .scene-gesture-hint { inset: auto 0 5px; max-width: none; padding: 4px;
        background: transparent; color: var(--plat-400); text-align: center; font: 11px/1.4 var(--sans); }
    .plant-callouts, .plant-hint { display: none; }
    .plant-toolbar { gap: 6px; padding: 8px 0; background: none; }
    .plant-toolbar button, .plant-toolbar [data-plant="inspect"],
    .plant-toolbar [data-plant="power"], .plant-toolbar [data-plant="xray"] {
        min-height: 44px; min-width: 44px; padding: 8px 12px; border-radius: 7px;
        font: 500 12px/1.4 var(--sans); letter-spacing: 0; touch-action: manipulation;
        background: rgba(229,228,226,.04); color: var(--plat-200);
        border: 1px solid rgba(229,228,226,.12); box-shadow: none;
    }
    .plant-toolbar [data-plant="inspect"] { flex: 1; color: var(--btc-200); border-color: rgba(247,147,26,.24); background: rgba(247,147,26,.07); }
    .plant-toolbar [data-plant="xray"] { flex: 0 0 83px; }
    .plant-toolbar [data-plant="xray"][aria-pressed="true"] {
        color: var(--btc-200); border-color: rgba(247,147,26,.45); background: rgba(247,147,26,.12); box-shadow: none;
    }
    .plant-toolbar [data-plant="xray"]:hover:not(:disabled) { color: var(--plat-100); border-color: var(--line-btc); filter: none; }
    .plant-toolbar .plant-tools-toggle { display: inline-flex; align-items: center; justify-content: center; padding: 8px; }
    .plant-tools-toggle circle { fill: #171819; }
    .plant-toolbar .plant-tools-toggle[aria-expanded="true"] { color: var(--btc-200); border-color: var(--line-btc); }
    .plant-tools { display: none; }
    .plant-preview--tools .plant-tools { display: flex; flex-basis: 100%; gap: 6px; padding-top: 2px; }
    .plant-tools [data-plant="power"] { order: 0; margin-right: auto; }
    .plant-tools [data-plant="reset"] { flex: 1; }
    .plant-equipment { display: block; order: 2; border-top: 1px solid rgba(229,228,226,.09); padding: 0 2px 5px; }
    .plant-equipment select { display: block; width: 100%; min-width: 0; height: 48px;
        padding: 0 26px 0 2px; border: 0; border-radius: 0; color: var(--plat-200); background-color: transparent;
        font: 400 16px/1.4 var(--sans); cursor: pointer; color-scheme: dark; }
    .plant-equipment select:focus-visible { outline: 2px solid var(--btc-300); outline-offset: -2px; }
    .plant-equipment p { margin: 0; padding: 0 2px 10px; color: var(--plat-300); font: 13px/1.5 var(--sans); }
    .plant-note { display: none; padding: 0 14px 12px; font: 12px/1.5 var(--sans); }
    .plant-preview--tools .plant-note { display: block; }

    .dg-toggle { display: flex; width: 100%; margin-bottom: 12px; border: 0; border-bottom: 1px solid var(--line-mid); }
    .dg-toggle > * { flex: 1; min-width: 0; min-height: 44px; justify-content: center; padding: 9px 3px;
        font: 500 12px/1.4 var(--sans); text-transform: none; letter-spacing: 0; gap: 4px; }
    .dg-toggle > * + * { border-left: 0; }
    .dg-toggle svg { display: none; }
    .dg-toggle .dg-toggle-on { color: var(--btc-200); background: none; box-shadow: 0 2px var(--btc-300); }
    .dg-scale { margin-top: 0; margin-bottom: 12px; gap: 0 12px; }
    .dg-scale-hint { display: none; }
    .dg-scale-end { font: 12px/1.4 var(--sans); text-transform: none; letter-spacing: 0; }
}
