.garage-mechanic-button { display:flex; align-items:center; gap:12px; min-height:64px; min-width:240px; max-width:100%; margin-left:auto; padding:12px 16px; border:1px solid #d1a832; border-radius:14px; color:#f4f8ff; background:linear-gradient(120deg,#19364c,#0a192b); box-shadow:inset 0 1px 0 #ffe79826,0 5px 18px #0003; font-family:inherit; text-align:left; cursor:pointer; touch-action:manipulation; transition:background .18s,border-color .18s,box-shadow .18s; }
.garage-mechanic-button img { flex:none; width:38px; height:38px; object-fit:contain; }
.garage-mechanic-label { display:flex; flex-direction:column; gap:4px; min-width:0; }
.garage-mechanic-label strong { color:#ffe798; font-size:14px; font-weight:850; }
.garage-mechanic-label small { color:#acc5da; font-size:11px; font-weight:600; }
.garage-mechanic-arrow { margin-left:auto; padding-left:8px; color:#ffd43b; font-size:28px; line-height:1; }
.garage-mechanic-button:hover { border-color:#ffe798; background:linear-gradient(120deg,#23465d,#11283d); box-shadow:inset 0 1px 0 #ffe79833,0 0 18px #ffd43b16; }
.garage-mechanic-button:focus-visible { outline:3px solid #ffe798; outline-offset:4px; }
.garage-mechanic-button:active { background:#203c50; }
@media(max-width:600px) { .garage-mechanic-button { flex-basis:100%; width:100%; min-width:0; margin-left:0; } }
@media(prefers-reduced-motion:reduce) { .garage-mechanic-button { transition:none; } }
.mechanic-heading { display:flex; align-items:center; gap:12px; margin:0 42px 12px 0; }
.mechanic-heading img { width:42px; height:42px; object-fit:contain; }
.mechanic-heading h2 { margin:0; color:#eef5ff; font-size:clamp(20px,4vw,28px); font-weight:900; font-style:italic; }
.mechanic-note { color:#9eb4ca; font-size:12px; line-height:1.6; margin:8px 0 16px; }
.mechanic-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:12px; width:100%; }
.mechanic-card { min-width:0; padding:16px; border:1px solid #294961; border-radius:14px; background:linear-gradient(145deg,#122d40,#081525); display:flex; flex-direction:column; gap:10px; }
.mechanic-card.is-equipped { border-color:#eabf31; box-shadow:inset 0 0 18px #eabf3110; }
.mechanic-card img { width:48px; height:48px; object-fit:contain; }
.mechanic-card h3 { color:#f3f6ff; font-size:15px; margin:0; }
.mechanic-card p { color:#afc3d6; font-size:12px; line-height:1.5; margin:0; }
.mechanic-card .mechanic-life { color:#facc15; font-weight:800; font-size:12px; }
.mechanic-card button,.mechanic-card select { width:100%; min-height:42px; border-radius:10px; padding:9px; font-weight:700; font-size:12px; }
.mechanic-card select { color:#ecf5ff; background:#08192b; border:1px solid #30516b; }
.mechanic-card button { cursor:pointer; margin-top:auto; }
.mechanic-card button:disabled { opacity:.5; cursor:not-allowed; }
.mechanic-dialog .mechanic-card { display:grid; grid-template-rows:48px auto minmax(36px,auto) minmax(54px,auto) 44px 48px 44px; align-items:start; }
.mechanic-dialog .mechanic-card button { margin-top:0; height:100%; }
.mechanic-dialog .garage-select-native { width:1px; height:1px; min-height:0; padding:0; }
.mechanic-part-picker { width:100%; }
.mechanic-dialog .garage-select-trigger.dropdown-selected { height:44px; min-height:44px; font-size:12px; padding:0 12px; }
.mechanic-dialog .garage-select-trigger:disabled { opacity:.5; cursor:not-allowed; }
.mechanic-dialog .garage-select-trigger.open { border-color:#ffd43b !important; }
.mechanic-dialog .garage-filter-menu [role="option"] { white-space:normal; overflow-wrap:anywhere; font-size:12px; }
@supports(grid-template-rows:subgrid) {
  .mechanic-dialog .mechanic-card { grid-row:span 7; grid-template-rows:subgrid; }
}
.mechanic-dialog { width:880px; max-width:100%; max-height:100%; overflow-y:auto; padding:24px; position:relative; color:#eff6ff; }
.mechanic-dialog > .pk-modal-close { position:absolute; top:16px; right:16px; }
.mechanic-dialog-overlay { display:flex; position:fixed; inset:0; z-index:4500; padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)); box-sizing:border-box; align-items:center; justify-content:center; background:#030c19d9; backdrop-filter:blur(9px); }
.mechanic-message { font-size:13px; line-height:1.5; color:#a7d9f2; min-height:20px; margin:8px 0; }
.mechanic-message.is-error { color:#fda4af; }
.mechanic-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(125px,1fr)); gap:8px; margin:14px 0; }
.mechanic-stat { border:1px solid #24465d; border-radius:10px; background:#08192b; padding:10px; }
.mechanic-stat span { display:block; font-size:10px; color:#91b4cc; margin-bottom:5px; }
.mechanic-stat strong { font-size:14px; color:#facc15; }
.mechanic-link { color:#38bdf8; font-weight:700; font-size:13px; }
.mechanic-shop-intro { grid-column:1/-1; }
@media(max-width:600px) { .mechanic-dialog { padding:20px 14px; } .mechanic-grid { grid-template-columns:1fr; } .mechanic-dialog .mechanic-card { display:flex; grid-row:auto; } }
