
/* 1.10.0 – realistic workshop device visuals */
.az-ws-part{
  min-width:142px;padding:12px 10px 10px;border-radius:7px;
  background:linear-gradient(145deg,#fafaf8,#e8e8e4);
  border:1px solid #969da1;box-shadow:0 7px 14px rgba(33,42,47,.2)
}
.az-ws-part>b{margin-top:11px;font-size:.72rem;letter-spacing:.01em}
.az-device{width:112px;height:94px;border-radius:5px;background:linear-gradient(145deg,#f8f8f5,#d9d9d4);border:1px solid #92999d;box-shadow:inset 0 0 0 5px #f3f3ef,0 2px 4px rgba(0,0,0,.18)}
.az-device:before,.az-device:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle,#666 0 25%,#bfc1bf 30% 65%,#777 70%);top:7px}
.az-device:before{left:8px}.az-device:after{right:8px}

/* installation switch */
.az-device.switch .face{width:62px;height:62px;border:1px solid #a6a6a2;border-radius:3px;background:linear-gradient(155deg,#fff 0 45%,#deded9 48% 100%);box-shadow:2px 3px 6px rgba(0,0,0,.22)}
.az-device.switch .face:before{content:"";position:absolute;left:8px;right:8px;top:30px;height:1px;background:#c1c1bd}
.az-device.switch .face:after{content:"";position:absolute;width:4px;height:4px;right:7px;top:7px;border-radius:50%;background:#aaa}

/* Schuko-style learning visual */
.az-device.socket .face{width:68px;height:68px;border-radius:50%;border:2px solid #9c9f9d;background:radial-gradient(circle,#f9f9f6 0 49%,#dadbd7 51% 59%,#f5f5f1 61%);box-shadow:inset 0 3px 7px rgba(0,0,0,.14)}
.az-device.socket .face:before,.az-device.socket .face:after{content:"";position:absolute;top:27px;width:10px;height:13px;border-radius:45%;background:#555;box-shadow:inset 0 1px 2px #222}
.az-device.socket .face:before{left:14px}.az-device.socket .face:after{right:14px}
.az-device.socket{background:linear-gradient(#f8f8f5,#e3e3df)}
.az-device.socket i.face{}

/* lamp holder and bulb */
.az-device.lamp{width:106px;height:106px;border-radius:8px;background:#ededE8}
.az-device.lamp .face{width:60px;height:60px;top:42%;border-radius:50%;border:2px solid #9a8c58;background:radial-gradient(circle at 38% 30%,#fffde7 0 13%,#f5dc6d 30%,#c9a73c 70%);box-shadow:0 0 18px rgba(238,203,77,.42)}
.az-device.lamp .face:after{content:"";position:absolute;left:18px;right:18px;bottom:-18px;height:18px;border-radius:2px;background:repeating-linear-gradient(0deg,#777 0 2px,#aaa 2px 4px)}

/* junction box with visible internal push connectors */
.az-device.junction{width:126px;height:104px;border-radius:9px;background:linear-gradient(145deg,#f1f1eb,#d7d8d2);box-shadow:inset 0 0 0 4px #ecece7,0 2px 4px rgba(0,0,0,.18)}
.az-device.junction .face{width:94px;height:54px;border:1px solid #9fa4a4;border-radius:5px;background:#e2e2dc;box-shadow:inset 0 2px 5px rgba(0,0,0,.12)}
.az-device.junction .face:before{content:"";position:absolute;left:8px;right:8px;top:11px;height:12px;border-radius:3px;background:repeating-linear-gradient(90deg,#f5a623 0 11px,#d8890d 11px 13px,#f4eee1 13px 17px)}
.az-device.junction .face:after{content:"";position:absolute;left:8px;right:8px;bottom:9px;height:12px;border-radius:3px;background:repeating-linear-gradient(90deg,#b8b9b4 0 11px,#888 11px 13px,#eee 13px 17px)}

/* low-voltage training supply */
.az-device.source{width:128px;height:100px;background:linear-gradient(145deg,#4c5960,#27363e);border-color:#1f292e;box-shadow:inset 0 0 0 4px #5d686e,0 3px 7px rgba(0,0,0,.25)}
.az-device.source .face{width:82px;height:48px;border:1px solid #151b1e;border-radius:4px;background:#182228;box-shadow:inset 0 0 8px #000}
.az-device.source .face:after{content:"24 V  DC\A ÜBUNG";white-space:pre;position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:#8de88a;font-family:monospace;font-size:.66rem;font-weight:900;text-shadow:0 0 5px rgba(98,255,98,.45)}
.az-device.source .face:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;right:-14px;top:4px;background:#68dc72;box-shadow:0 0 6px #68dc72}

/* push-in connector */
.az-device.connector{width:128px;height:72px;border-radius:7px;background:linear-gradient(145deg,#f2eee3,#d8d1c1);box-shadow:inset 0 0 0 3px #fbf8ef,0 3px 5px rgba(0,0,0,.16)}
.az-device.connector .face{width:105px;height:34px;border-radius:5px;border:1px solid #8f8c82;background:repeating-linear-gradient(90deg,#ef9f24 0 16px,#d9820a 16px 19px,#f2eee3 19px 22px);box-shadow:inset 0 2px 3px rgba(255,255,255,.45)}
.az-device.connector .face:after{content:"";position:absolute;left:7px;right:7px;top:7px;height:8px;background:repeating-linear-gradient(90deg,#4d4d48 0 6px,transparent 6px 22px)}

/* terminals look like actual connection points */
.az-terminal-row{bottom:-13px;gap:5px}
.az-terminal{width:28px;height:23px;border-radius:4px;border:1px solid #666;box-shadow:inset 0 0 0 3px rgba(255,255,255,.22),0 2px 3px rgba(0,0,0,.2);font-size:.52rem}
.az-terminal:after{content:"";width:6px;height:6px;border-radius:50%;background:rgba(20,20,20,.65);position:absolute}
.az-terminal{position:relative;display:grid;place-items:center}
.az-terminal.slot{background:#e7961d;color:#222;border-color:#9b6514}
.az-terminal.slot:after{background:#3d3b36}

/* realistic cable jacket and separated cores */
.az-cable-sheath{stroke:#e0ddd5;stroke-width:24;stroke-linecap:round;filter:drop-shadow(0 2px 1px rgba(0,0,0,.18))}
.az-cable-group.cable5 .az-cable-sheath{stroke-width:29}
.az-cable-core{stroke-width:3.2;stroke-linecap:round}
.az-cable-group.cable5 .az-cable-core{stroke-width:2.8}
.az-cable-core.dim{opacity:.72}
.az-cable-mini{background:#e2dfd7;border-color:#999}

/* mounting wall */
.az-workbench{background:#e8dcc3;border-color:#c1aa84}
.az-workbench-grid{background-image:radial-gradient(circle,rgba(91,67,38,.22) 1.2px,transparent 1.7px);background-size:24px 24px}
.az-workbench-tip{background:rgba(26,46,58,.9)}
@media(max-width:620px){.az-ws-part{min-width:126px}.az-device{transform:scale(.88);transform-origin:center}}
