/* Engine-only workspace. The game's world remains visible around the window. */
#engineWorkshop { display:none; }
#app.is-engine > .inv-wrap { display:block!important; width:1192px!important; min-width:0!important; max-width:none!important; padding:0!important; gap:0!important; }
#app.is-engine > .inv-wrap > :not(#engineWorkshop) { display:none!important; }
#app.is-engine #caseFloat { display:none!important; }
#app.is-engine #engineWorkshop { display:block; color:var(--inv-text,#eeeae3); background:#191c20; border:1px solid #393d42; border-radius:16px; box-shadow:0 24px 80px #0008; overflow:hidden; font-family:inherit; }
#engineWorkshop * { box-sizing:border-box; }
#engineWorkshop button { font-family:inherit; }
#engineWorkshop .ew-head { display:flex; align-items:center; gap:20px; padding:24px 28px; border-bottom:1px solid #33373c; cursor:grab; touch-action:none; }
#engineWorkshop .ew-head:active { cursor:grabbing; }
#engineWorkshop .ew-brand { font-size:26px; font-weight:750; letter-spacing:-2px; color:var(--inv-accent,#d9c5a0); }
#engineWorkshop .ew-brand span { color:#555b63; font-weight:400; margin-left:4px; }
#engineWorkshop .ew-eyebrow { display:block; color:#979ca4; font-size:10px; font-weight:650; letter-spacing:1.6px; }
#engineWorkshop .ew-heading h1 { margin:4px 0 0; font-size:25px; line-height:1.12; font-weight:650; letter-spacing:-.6px; }
#engineWorkshop .ew-vehicle { margin-left:auto; font-size:12px; color:#c8ccd1; border:1px solid #3d424a; border-radius:6px; padding:9px 12px; max-width:360px; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
#engineWorkshop .ew-close { width:36px; height:36px; border:1px solid #3d424a; border-radius:8px; color:#c9cdd2; background:#23272c; font-size:25px; line-height:1; cursor:pointer; }
#engineWorkshop .ew-body { display:grid; grid-template-columns:minmax(0,1fr) 284px; }
#engineWorkshop .ew-main { padding:26px 24px 22px 28px; min-width:0; }
#engineWorkshop .ew-overview { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
#engineWorkshop h2 { margin:0; font-size:17px; font-weight:600; letter-spacing:-.3px; }
#engineWorkshop .ew-overview h2 { margin-top:7px; font-size:21px; }
#engineWorkshop .ew-fixed { color:#949ba4; font-size:11px; white-space:nowrap; }
#engineWorkshop .ew-fixed span { margin-left:8px; font-size:17px; color:var(--inv-accent,#d9c5a0); }
#engineWorkshop .ew-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
#engineWorkshop .ew-card { position:relative; display:flex; flex-direction:column; width:100%; min-height:236px; padding:13px; border:1px solid #3a3f46; border-radius:10px; background:linear-gradient(145deg,#282d33,#20242a); color:inherit; text-align:left; cursor:pointer; overflow:hidden; transition:background .15s,border-color .15s; }
#engineWorkshop .ew-card:hover { border-color:#7b807f; background:linear-gradient(145deg,#30353b,#24292f); }
#engineWorkshop .ew-card.is-selected { border-color:var(--inv-accent,#d9c5a0); background:linear-gradient(145deg,#34332f,#26292c); box-shadow:inset 0 0 0 1px #d9c5a01a; }
#engineWorkshop .ew-card-top { display:flex; align-items:center; justify-content:space-between; gap:5px; }
#engineWorkshop .ew-slot-number { font-size:11px; color:#858d97; font-variant-numeric:tabular-nums; }
#engineWorkshop .ew-tag { color:#a3a7ac; font-size:8px; font-weight:600; letter-spacing:1px; }
#engineWorkshop .ew-art { display:block; height:133px; width:100%; background-position:center; background-repeat:no-repeat; background-size:contain; margin:1px 0 5px; pointer-events:none; }
#engineWorkshop .ew-card-name { display:block; margin-top:auto; font-size:16px; font-weight:600; letter-spacing:-.1px; }
#engineWorkshop .ew-card-state { display:flex; justify-content:space-between; gap:4px; margin:8px 0 9px; font-size:12px; color:#a4abb3; }
#engineWorkshop .ew-card-state strong { color:var(--ew-health); font-size:12px; font-weight:600; font-variant-numeric:tabular-nums; }
#engineWorkshop [data-level="bad"] { --ew-health:#de927e; }
#engineWorkshop [data-level="warn"] { --ew-health:#d9bc81; }
#engineWorkshop [data-level="good"] { --ew-health:#9dbdae; }
#engineWorkshop .ew-card-meter,#engineWorkshop .ew-meter { display:block; height:3px; background:#3c4148; border-radius:4px; overflow:hidden; }
#engineWorkshop .ew-card-meter i,#engineWorkshop .ew-meter i { display:block; height:100%; background:var(--ew-health,#d9c5a0); border-radius:4px; }
#engineWorkshop .ew-drop-label { display:none; position:absolute; inset:auto 0 0; padding:12px 4px; font-size:11px; font-weight:600; text-align:center; background:#b6dac7; color:#14261e; }
#engineWorkshop .ew-card.drag-valid { border-color:#b6dac7; box-shadow:inset 0 0 0 2px #b6dac7; background:#273b33; }
#engineWorkshop .ew-card.drag-valid .ew-drop-label { display:block; }
#engineWorkshop .ew-card.drag-invalid { border-color:#de927e; box-shadow:inset 0 0 0 2px #de927e; }
#engineWorkshop .ew-guide { display:flex; align-items:center; gap:14px; padding-top:22px; }
#engineWorkshop .ew-guide-icon { display:grid; place-items:center; flex-shrink:0; width:36px; height:36px; border-radius:8px; border:1px solid #3e4248; font-size:24px; color:var(--inv-accent,#d9c5a0); }
#engineWorkshop .ew-guide p { margin:0; font-size:11px; line-height:1.6; color:#929aa4; }
#engineWorkshop .ew-guide strong { display:block; color:#d4d7dc; font-weight:500; font-size:12px; }
#engineWorkshop .ew-parts-count { margin-left:auto; font-size:9px; letter-spacing:1px; color:#717b86; }
#engineWorkshop .ew-sidebar { padding:26px 24px; background:#16191d; border-left:1px solid #33373c; display:flex; flex-direction:column; gap:23px; }
#engineWorkshop .ew-condition-value { font-size:46px; font-weight:500; letter-spacing:-2px; line-height:1.1; margin:13px 0; color:var(--ew-health); }
#engineWorkshop .ew-condition-note { font-size:11px; color:#a5adb7; margin:10px 0 0; }
#engineWorkshop .ew-materials { border-top:1px solid #33373c; padding-top:21px; }
#engineWorkshop .ew-section-head { display:flex; align-items:center; justify-content:space-between; }
#engineWorkshop .ew-total { border:1px solid #3d4248; padding:4px 7px; border-radius:5px; color:#c1c6ce; font-size:11px; }
#engineWorkshop .ew-muted { color:#8f98a3; font-size:10px; margin:9px 0 13px; }
#engineWorkshop .ew-stacks { display:flex; flex-direction:column; gap:8px; max-height:152px; overflow:auto; }
#engineWorkshop .ew-scrap.item { position:relative!important; display:flex!important; flex-shrink:0; align-items:center; gap:8px; width:100%!important; height:66px!important; min-height:66px!important; margin:0!important; padding:8px!important; border:1px dashed #626361!important; border-radius:9px; background:#282c2f!important; box-shadow:none!important; cursor:grab; transform:none!important; }
#engineWorkshop .ew-scrap.item:hover { border-color:var(--inv-accent,#d9c5a0)!important; }
#engineWorkshop .ew-scrap.is-dragging-source { opacity:.45; }
#engineWorkshop .ew-scrap-art { display:block; flex:0 0 46px; height:46px; background-size:contain; background-position:center; background-repeat:no-repeat; }
#engineWorkshop .ew-scrap-label { display:block; min-width:0; }
#engineWorkshop .ew-scrap-label strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:500; }
#engineWorkshop .ew-scrap-label span { display:block; font-size:9px; color:#9fa6ad; margin-top:5px; }
#engineWorkshop .ew-scrap-count { margin-left:auto; color:var(--inv-accent,#d9c5a0); font-size:14px; }
#engineWorkshop .ew-cost { margin:10px 0 0; color:#929ba6; font-size:10px; line-height:1.5; }
#engineWorkshop .ew-empty { margin:0; color:#b6bfc8; font-size:12px; line-height:1.6; padding:14px; background:#24292e; border:1px dashed #4b545e; border-radius:8px; }
#engineWorkshop .ew-detail { border-top:1px solid #33373c; padding-top:21px; margin-top:auto; }
#engineWorkshop .ew-selected-name { margin-top:9px; font-size:20px; }
#engineWorkshop .ew-selected-note { font-size:10px; line-height:1.5; color:#939da7; margin:7px 0 13px; }
#engineWorkshop .ew-change { display:flex; align-items:center; gap:13px; font-size:26px; font-weight:500; font-variant-numeric:tabular-nums; }
#engineWorkshop .ew-before { color:#a9b0b7; }
#engineWorkshop .ew-arrow { font-size:18px; color:#78828c; }
#engineWorkshop .ew-after { color:var(--inv-accent,#d9c5a0); }
#engineWorkshop .ew-preview-meter { height:4px; position:relative; background:#3c4148; border-radius:4px; overflow:hidden; margin:13px 0 18px; }
#engineWorkshop .ew-preview-meter i { position:absolute; left:0; top:0; bottom:0; background:var(--inv-accent,#d9c5a0); }
#engineWorkshop .ew-preview-meter .ew-current { background:#89929a; }
#engineWorkshop .ew-repair { width:100%; min-height:42px; padding:10px 8px; border:0; border-radius:7px; background:var(--inv-accent,#d9c5a0); color:#252726; font-size:12px; font-weight:600; cursor:pointer; }
#engineWorkshop .ew-repair:hover:not(:disabled) { filter:brightness(1.08); }
#engineWorkshop .ew-repair:disabled { cursor:default; background:#2c3238; color:#909ba6; }
#engineWorkshop .ew-repair-hint { display:block; font-size:9px; text-align:center; line-height:1.5; margin-top:9px; color:#949ea8; }
#engineWorkshop .ew-footer { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #33373c; background:#191c20; padding:13px 28px; color:#8c96a0; font-size:10px; }
#engineWorkshop .ew-footer > span:first-child { font-size:9px; letter-spacing:1.4px; }
#engineWorkshop .ew-footer i { display:inline-block; width:5px; height:5px; border-radius:50%; background:var(--inv-accent,#d9c5a0); margin-right:7px; }
#engineWorkshop kbd { display:inline-block; font:inherit; border:1px solid #41474f; border-radius:4px; padding:3px 5px; margin:0 5px 0 15px; }
#engineWorkshop button:focus-visible,#engineWorkshop .ew-head:focus-visible { outline:2px solid var(--inv-accent,#d9c5a0); outline-offset:-3px; }
#app.engine-repairing #engineWorkshop .ew-scrap { cursor:wait; opacity:.55; }
@media (prefers-reduced-motion:reduce) { #engineWorkshop * { transition:none!important; } }
