/* Minimal PRO 03 — opt-in layout. No changes to cabinet geometry. */
body.minimal-pro-03 .game-shell{position:relative!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:0!important}
body.minimal-pro-03 .game-shell>.leftbar{grid-column:1!important;grid-row:1!important;width:64px!important;min-width:64px!important;max-width:64px!important;padding:4px!important;background:#101d2d!important;z-index:35!important;overflow:visible!important}
body.minimal-pro-03 .game-shell>.workspace{grid-column:2!important;grid-row:1!important;min-width:0!important;width:100%!important}
body.minimal-pro-03 .game-shell>.rightbar{display:none!important;position:absolute!important;top:0!important;bottom:0!important;left:64px!important;width:min(360px,calc(100% - 64px))!important;min-width:0!important;max-width:none!important;overflow:auto!important;z-index:32!important;background:#15283b!important;box-shadow:10px 0 30px #0009!important}
body.minimal-pro-03.mp03-right-open .game-shell>.rightbar{display:flex!important;flex-direction:column!important}
body.minimal-pro-03 .game-shell>.leftbar>:not(.mp03-nav){display:none!important}
body.minimal-pro-03.mp03-tasks-open .game-shell>.leftbar{position:absolute!important;top:0!important;bottom:0!important;left:0!important;width:min(390px,100%)!important;max-width:none!important;min-width:0!important;overflow-y:auto!important;padding-left:68px!important;display:flex!important;flex-direction:column!important;box-shadow:10px 0 30px #0009!important;background:#15283b!important}
body.minimal-pro-03.mp03-tasks-open .game-shell>.leftbar>:not(.mp03-nav):not(.mode-hidden):not([hidden]){display:block!important}
body.minimal-pro-03.mp03-tasks-open .game-shell>.leftbar>.mode-hidden,body.minimal-pro-03.mp03-tasks-open .game-shell>.leftbar>[hidden]{display:none!important}
body.minimal-pro-03.mp03-tasks-open .mp03-nav{position:absolute!important;left:0;top:0;bottom:0}
body.minimal-pro-03 .mp03-nav{display:flex;flex-direction:column;gap:6px;width:56px;padding:6px 2px;background:#101d2d}
body.minimal-pro-03 .mp03-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px;width:52px;border:0;border-radius:9px;background:transparent;color:#d1e4f5;font:600 10px/1.15 system-ui,sans-serif;cursor:pointer}
body.minimal-pro-03 .mp03-nav button[aria-pressed=true],body.minimal-pro-03 .mp03-nav button:hover{background:#20527c;color:#fff}
body.minimal-pro-03 .mp03-nav .mp03-symbol{font-size:22px}
body.minimal-pro-03 .rightbar>.catalog-panel,body.minimal-pro-03 .rightbar>.cable-panel,body.minimal-pro-03 .rightbar>.details-panel{display:none!important}
body.minimal-pro-03.mp03-apparatus .rightbar>.catalog-panel,body.minimal-pro-03.mp03-apparatus .rightbar>.details-panel,body.minimal-pro-03.mp03-wires .rightbar>.cable-panel{display:block!important}
body.minimal-pro-03 .mp03-close{display:none!important}
body.minimal-pro-03.mp03-right-open .mp03-close{display:block!important;position:sticky;top:0;z-index:2;border:1px solid #36536d;border-radius:7px;background:#203b55;color:white;padding:9px;margin:7px;cursor:pointer}
@media(max-width:850px){body.minimal-pro-03 .game-shell{grid-template-columns:58px minmax(0,1fr)!important}body.minimal-pro-03 .game-shell>.leftbar{width:58px!important;min-width:58px!important;max-width:58px!important}body.minimal-pro-03 .game-shell>.rightbar{left:58px!important;width:min(350px,calc(100% - 58px))!important}body.minimal-pro-03 .mp03-nav{width:52px}body.minimal-pro-03 .mp03-nav button{width:48px}body.minimal-pro-03.mp03-tasks-open .game-shell>.leftbar{width:min(390px,100%)!important;max-width:none!important;padding-left:58px!important}}

/* Stage 6: keep native hidden states and keyboard focus visible. */
body.minimal-pro-03 .mp03-nav button:focus-visible,body.minimal-pro-03 .mp03-close:focus-visible{outline:3px solid #80caff!important;outline-offset:2px!important}
body.minimal-pro-03 .game-shell>.rightbar>[hidden],body.minimal-pro-03 .game-shell>.rightbar>.mode-hidden{display:none!important}

/* Stage 7.1 — refined tool rail; limited to the opt-in preview. */
body.minimal-pro-03 .game-shell>.leftbar{border-right:1px solid #29435a!important}
body.minimal-pro-03 .mp03-nav{position:sticky;top:8px;z-index:4;align-self:flex-start;border:1px solid #284057;border-radius:12px;padding:7px 2px;box-sizing:border-box;box-shadow:0 8px 22px #0003}
body.minimal-pro-03 .mp03-nav button{position:relative;transition:background-color .16s ease,color .16s ease;touch-action:manipulation}
body.minimal-pro-03 .mp03-nav button[aria-pressed=true]{box-shadow:inset 3px 0 0 #7ed0ff;background:#214c70;color:#fff}
body.minimal-pro-03 .mp03-nav button[aria-pressed=true]::after{content:'';position:absolute;right:4px;top:8px;width:5px;height:5px;border-radius:50%;background:#8fdbff}
body.minimal-pro-03 .mp03-nav button:active{background:#2b5c7c}
body.minimal-pro-03 .mp03-close{font-weight:700!important;min-height:42px;touch-action:manipulation}
/* Stage 7.2 — spacious workspace without changing electrical geometry. */
body.minimal-pro-03 .game-shell>.workspace{box-sizing:border-box;min-width:0!important;overflow-x:hidden;background:linear-gradient(180deg,#101b2a 0%,#0d1826 100%);padding:12px clamp(8px,1.3vw,22px) 18px!important}
body.minimal-pro-03 .mp03-workspace-label{display:flex;align-items:center;gap:9px;margin:0 0 10px;padding:8px 12px;border:1px solid #28435b;border-radius:9px;background:#142639;color:#a8cde7;font:700 11px/1.2 system-ui,sans-serif;letter-spacing:.12em}
body.minimal-pro-03 .mp03-workspace-label::before{content:'';width:7px;height:7px;border-radius:50%;background:#65cba9;box-shadow:0 0 0 3px #65cba920}
body.minimal-pro-03 .game-shell>.workspace>.cabinet{max-width:100%;min-width:0;box-sizing:border-box}
body.minimal-pro-03 .game-shell>.workspace>.cabinet-head{min-width:0;box-sizing:border-box}
body.minimal-pro-03 .game-shell>.rightbar{border:1px solid #36536d!important;border-radius:0 12px 12px 0;box-sizing:border-box}
@media(max-width:850px){body.minimal-pro-03 .game-shell>.workspace{padding:8px 6px 12px!important}body.minimal-pro-03 .mp03-workspace-label{font-size:10px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){body.minimal-pro-03 .mp03-nav button{transition:none}}

/* Stage 7.3 — panel presentation only; original catalog and wiring handlers stay intact. */
body.minimal-pro-03 .game-shell>.rightbar{gap:10px!important;padding:10px!important;scrollbar-color:#476a84 #15283b;overscroll-behavior:contain}
body.minimal-pro-03 .mp03-panel-intro{display:none}
body.minimal-pro-03.mp03-right-open .mp03-panel-intro{display:block;padding:12px 13px;border:1px solid #35536b;border-radius:10px;background:linear-gradient(135deg,#1b3c55,#142638)}
body.minimal-pro-03 .mp03-panel-heading{color:#f0f8ff;font:800 15px/1.25 system-ui,sans-serif;letter-spacing:.055em}
body.minimal-pro-03 .mp03-panel-hint{margin:6px 0 0;color:#acc6da;font:12px/1.5 system-ui,sans-serif}
body.minimal-pro-03.mp03-right-open .mp03-close{align-self:flex-end;margin:0!important;min-width:124px}
body.minimal-pro-03 .game-shell>.rightbar>.catalog-panel,body.minimal-pro-03 .game-shell>.rightbar>.cable-panel,body.minimal-pro-03 .game-shell>.rightbar>.details-panel{min-width:0;width:100%;box-sizing:border-box;margin:0!important}
body.minimal-pro-03 .rightbar .category-tabs{display:flex;flex-wrap:wrap;gap:5px;max-width:100%}
body.minimal-pro-03 .rightbar .category-tabs button{min-height:35px;touch-action:manipulation}
body.minimal-pro-03 .rightbar .catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
body.minimal-pro-03 .rightbar .catalog-card{min-width:0;width:100%;box-sizing:border-box;min-height:104px;touch-action:manipulation}
body.minimal-pro-03 .rightbar .catalog-card:focus-visible,body.minimal-pro-03 .rightbar .cable-buttons button:focus-visible,body.minimal-pro-03 .rightbar .category-tabs button:focus-visible{outline:3px solid #80caff!important;outline-offset:2px}
body.minimal-pro-03 .rightbar .catalog-card b,body.minimal-pro-03 .rightbar .catalog-card small{overflow-wrap:anywhere}
body.minimal-pro-03 .rightbar .cable-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.minimal-pro-03 .rightbar .cable-buttons button{min-height:46px;touch-action:manipulation}
body.minimal-pro-03 .rightbar .wire-colors{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body.minimal-pro-03 .rightbar .wire-colors .wire{min-width:32px;text-align:center}
@media(max-width:480px){body.minimal-pro-03 .game-shell>.rightbar{padding:7px!important;gap:7px!important}body.minimal-pro-03 .rightbar .catalog-grid{gap:5px}body.minimal-pro-03 .rightbar .catalog-card{min-height:90px}body.minimal-pro-03 .mp03-panel-intro{padding:9px!important}}

/* Stage 7.5 — readable wiring identification, without altering routes or endpoints. */
body.minimal-pro-03 .mp03-wire-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px;padding:11px;border:1px solid #35536b;border-radius:10px;background:#102337}
body.minimal-pro-03 .mp03-wire-guide>strong{grid-column:1/-1;font:800 11px/1.3 system-ui,sans-serif;letter-spacing:.08em;color:#b9d6ec;margin-bottom:3px}
body.minimal-pro-03 .mp03-wire-legend-item{display:grid;grid-template-columns:16px 24px minmax(0,1fr);align-items:center;gap:6px;padding:7px 5px;border-radius:7px;background:#1c3349;color:#e4f0f8;font:12px/1.3 system-ui,sans-serif;min-width:0}
body.minimal-pro-03 .mp03-wire-legend-item small{font-size:10px;color:#c6d8e5;overflow-wrap:anywhere}
body.minimal-pro-03 .mp03-wire-dot{width:12px;height:12px;border-radius:50%;border:1px solid #ffffff70;box-shadow:0 0 0 2px #0004}
body.minimal-pro-03 .mp03-l1{background:#92552e}
body.minimal-pro-03 .mp03-l2{background:#171b24}
body.minimal-pro-03 .mp03-l3{background:#858d96}
body.minimal-pro-03 .mp03-n{background:#268acb}
body.minimal-pro-03 .mp03-pe{background:repeating-linear-gradient(90deg,#e9cf30 0 5px,#329a61 5px 10px)}
@media(max-width:480px){body.minimal-pro-03 .mp03-wire-guide{grid-template-columns:1fr}body.minimal-pro-03 .mp03-wire-legend-item{grid-template-columns:16px 28px minmax(0,1fr)}}

/* Stage 7.5: read-only catalog of planned conductor and multicore cable variants. */
body.minimal-pro-03 .mp03-wire-catalog{display:grid;gap:9px;margin-top:12px;padding:12px;border:1px solid #35536b;border-radius:10px;background:#12283b;color:#e8f3fc;font-family:system-ui,sans-serif}
body.minimal-pro-03 .mp03-wire-catalog>strong{font-size:12px;letter-spacing:.06em}
body.minimal-pro-03 .mp03-wire-catalog>p{font-size:11px;line-height:1.5;color:#b3cbdc;margin:0}
body.minimal-pro-03 .mp03-wire-catalog-group{display:grid;gap:6px;padding:8px;border-radius:8px;background:#1b3449}
body.minimal-pro-03 .mp03-wire-catalog-group>b{font-size:12px}
body.minimal-pro-03 .mp03-wire-sizes{display:flex;flex-wrap:wrap;gap:5px}
body.minimal-pro-03 .mp03-wire-size{padding:5px 7px;border:1px solid #49677f;border-radius:6px;background:#223e56;font-size:11px;white-space:nowrap}

body.minimal-pro-03 .mp03-wire-size{cursor:pointer;color:#e8f3fc;font-family:inherit}
body.minimal-pro-03 .mp03-wire-size[aria-pressed=true]{border-color:#86d7ff;background:#245c7c;box-shadow:inset 0 0 0 1px #86d7ff}
body.minimal-pro-03 .mp03-wire-size:focus-visible{outline:3px solid #80caff;outline-offset:2px}

/* Etap 7.5 — skala wizualna izolacji i metalowych zakończeń przewodów.
   Ograniczona do trybu Minimal PRO 03; oryginalne stanowisko bez zmian. */
body.minimal-pro-03 .wire-layer .wire-path[data-gauge="1.5"]{stroke-width:4.2px!important}
body.minimal-pro-03 .wire-layer .wire-path[data-gauge="2.5"]{stroke-width:5.2px!important}
body.minimal-pro-03 .wire-layer .wire-path[data-gauge="4"]{stroke-width:6.3px!important}
body.minimal-pro-03 .wire-layer .wire-path[data-gauge="6"]{stroke-width:7.5px!important}
body.minimal-pro-03 .wire-layer .wire-shadow[data-gauge="1.5"]{stroke-width:7px!important}
body.minimal-pro-03 .wire-layer .wire-shadow[data-gauge="2.5"]{stroke-width:8px!important}
body.minimal-pro-03 .wire-layer .wire-shadow[data-gauge="4"]{stroke-width:9.2px!important}
body.minimal-pro-03 .wire-layer .wire-shadow[data-gauge="6"]{stroke-width:10.5px!important}
body.minimal-pro-03 .wire-ferrule-metal[data-gauge="4"]{stroke-width:5.5px!important}
body.minimal-pro-03 .wire-ferrule-metal[data-gauge="6"]{stroke-width:6.4px!important}
body.minimal-pro-03 .wire-solid-copper{stroke:#b97742;stroke-width:3.2px;stroke-linecap:round;filter:drop-shadow(0 1px 1px #0008)}
body.minimal-pro-03 .wire-solid-copper[data-gauge="2.5"]{stroke-width:3.8px}
body.minimal-pro-03 .wire-solid-copper[data-gauge="4"]{stroke-width:4.5px}
body.minimal-pro-03 .wire-solid-copper[data-gauge="6"]{stroke-width:5.2px}

/* Etap 7.6 — aparatura PRO 2.0: wizualna karta urządzenia, bez ingerencji w montaż. */
body.minimal-pro-03 .rightbar .catalog-card{
 display:flex!important;flex-direction:column!important;align-items:flex-start!important;
 gap:7px!important;padding:12px!important;border-radius:12px!important;
 border:1px solid #45647b!important;background:linear-gradient(145deg,#213b50,#14283b)!important;
 color:#eaf4fc!important;text-align:left!important;transition:border-color .16s,background .16s,box-shadow .16s!important;
}
body.minimal-pro-03 .rightbar .catalog-card:hover,
body.minimal-pro-03 .rightbar .catalog-card:focus-visible{
 border-color:#81c6f5!important;background:linear-gradient(145deg,#294b64,#19334b)!important;
 box-shadow:0 0 0 1px #81c6f544,0 7px 18px #0005!important;
}
body.minimal-pro-03 .rightbar .catalog-card>.mini-device{
 align-self:center!important;flex-shrink:0!important;filter:drop-shadow(0 4px 4px #0007);
}
body.minimal-pro-03 .rightbar .catalog-card>b{font-size:12px!important;line-height:1.3!important;color:#f5f9fc!important}
body.minimal-pro-03 .rightbar .catalog-card>small{font-size:11px!important;line-height:1.4!important;color:#b5cddd!important}
body.minimal-pro-03 .rightbar .mp03-apparatus-meta{display:flex;flex-wrap:wrap;gap:4px;width:100%;margin-top:auto}
body.minimal-pro-03 .rightbar .mp03-apparatus-chip{
 display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;
 border-radius:5px;border:1px solid #56758b;background:#112437;
 color:#d5e9f6;font:600 10px/1.2 system-ui,sans-serif;
}
@media(max-width:480px){
 body.minimal-pro-03 .rightbar .catalog-card{padding:9px!important;gap:5px!important}
 body.minimal-pro-03 .rightbar .mp03-apparatus-chip{font-size:9px;min-height:20px}
}

/* Etap 7.6.2 — PRO 2.0: materiały obudów, dźwigni i opisów na stanowisku opt-in.
   Nie zmieniamy geometrii aparatów, zacisków ani obszarów klikalnych. */
body.minimal-pro-03 .mount-grid .mounted-device>.device{
 box-shadow:inset 2px 0 2px #ffffffdd,inset -2px 0 3px #6c7c7888,
 inset 0 2px 1px #fff,0 2px 3px #192b3266,3px 6px 11px #08162088!important;
}
body.minimal-pro-03 .mount-grid .mounted-device .lever{
 /* Keep existing FR/RCD/RCBO/MCB family-specific lever colors. */
 border:1px solid #344149!important;
 box-shadow:inset 1px 1px 1px #ffffff70,inset -2px -2px 2px #0c1316aa,1px 2px 2px #10181c99!important;
}
body.minimal-pro-03 .mount-grid .mounted-device .brand-strip{
 text-shadow:0 1px 0 #fff!important;
 box-shadow:inset 0 1px 0 #ffffffc9,0 1px 1px #475c6240!important;
}
body.minimal-pro-03 .mount-grid .mounted-device .wire-terminal:not(.used-terminal,.start-terminal,.bad-terminal,.guide-compatible,.guide-target,.guide-source,.bridge-eligible,.bridge-start,.guide-dim){
 background:radial-gradient(circle at 38% 30%,#f8faf8,#bfc9c5 62%,#7f8d8a)!important;
 box-shadow:inset 0 0 0 2px #aeb9b5,0 1px 2px #101c2355!important;
}
@media(prefers-reduced-motion:reduce){
 body.minimal-pro-03 .mount-grid .mounted-device .lever{transition:none!important}
}

/* Etap 7.6.3 — identyfikacja rodzin bez zmiany stanu aparatu lub zacisków. */
body.minimal-pro-03 .mount-grid .mounted-device[data-code^="FR"] .brand-strip{--pro-family-accent:#d25b52}
body.minimal-pro-03 .mount-grid .mounted-device:is([data-code^="RCD"],[data-code^="RCBO"]) .brand-strip{--pro-family-accent:#3b9ed0}
body.minimal-pro-03 .mount-grid .mounted-device[data-code^="SPD"] .brand-strip{--pro-family-accent:#d7a44a}
body.minimal-pro-03 .mount-grid .mounted-device:is([data-code^="B"],[data-code^="C"]) .brand-strip{--pro-family-accent:#547d95}
body.minimal-pro-03 .mount-grid .mounted-device:is([data-code^="NTB"],[data-code^="PETB"]) .brand-strip{letter-spacing:0!important}
body.minimal-pro-03 .mount-grid .mounted-device .test-btn:focus-visible,
body.minimal-pro-03 .mount-grid .mounted-device .wire-terminal:focus-visible{
 outline:2px solid #1c91db!important;outline-offset:2px!important;
}

/* Etap 7.6.4 — mikrodetale: test RCD/RCBO, okienka SPD i kontrast oznaczeń.
   Wyłącznie wygląd; stan i obsługa pozostają w silniku symulatora. */
body.minimal-pro-03 .mount-grid .mounted-device .test-btn{
 box-shadow:inset 0 2px 1px #ffffffd9,inset 0 -2px 2px #273a3544,
 0 1px 2px #14262b99,0 0 0 1px #728b83!important;
 text-shadow:0 1px 0 #ffffff70!important;
}
body.minimal-pro-03 .mount-grid .mounted-device[data-code^="SPD"] .spd-window{
 box-shadow:inset 0 2px 1px #f0fff0b3,inset 0 -3px 2px #1d3a2e55,
 0 1px 3px #14282b88!important;
 border-color:#617a70!important;
}
body.minimal-pro-03 .mount-grid .mounted-device .brand-strip{
 -webkit-font-smoothing:antialiased;
}
body.minimal-pro-03 .mount-grid .mounted-device.selected-mounted>.device{
 outline:2px solid #84c8ff!important;outline-offset:2px!important;
}
