.vossdex-mechanic-root{
    max-width: 980px;
    margin: 1.5rem auto;
    padding: 1rem;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    background: #fafafa;
    border: 1px solid #ddd;
    border-radius: 12px;
}
.vmech-panel{ padding: .25rem 0; }
.vmech-title{ margin: 0 0 .75rem; font-size: 1.35rem; }
.vmech-hint{ color: #555; margin: 0 0 1rem; font-size: 14px; }
.vmech-form{ display:flex; flex-direction:column; gap:8px; max-width: 360px; }
.vmech-label{ font-weight:600; font-size: 13px; }
.vmech-input, .vmech-textarea{
    width:100%;
    padding:10px 12px;
    border:1px solid #ccc;
    border-radius:8px;
    font-size: 15px;
    background: #fff;
}
.vmech-textarea{ resize: vertical; }
.vmech-btn{
    display:inline-block;
    padding:10px 16px;
    border-radius:8px;
    border:1px solid #ccc;
    background:#fff;
    cursor:pointer;
    font-size:14px;
    font-weight:600;
}
.vmech-btn-primary{ background:#2271b1; border-color:#2271b1; color:#fff; }
.vmech-btn-secondary{ background:#f0f0f1; }
.vmech-btn-ghost{ background:transparent; border-color:transparent; color:#2271b1; text-decoration:underline; }
.vmech-error{ color:#b32d2e; font-size:14px; margin-top: 8px; }
.vmech-dash-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom: 12px; }
.vmech-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 900px){ .vmech-grid{ grid-template-columns:1fr; } }
.vmech-card{
    background:#fff;
    border:1px solid #ddd;
    border-radius:12px;
    padding: 12px;
}
.vmech-row{ display:flex; gap:8px; align-items:center; }
.vmech-row .vmech-input{ flex:1; }
.vmech-list{ margin-top: 10px; display:grid; gap:8px; }
.vmech-item{
    padding:10px 12px;
    border:1px solid #e3e3e3;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
}
.vmech-item:hover{ background:#f6f7f7; }
.vmech-item strong{ display:block; }
.vmech-small{ color:#666; font-size: 12px; margin: 8px 0 0; }
.vmech-msg{
    padding:10px 12px;
    border-radius:8px;
    background:#e7f5e9;
    color:#1e4620;
    font-size:14px;
    margin: 12px 0;
    min-height: 1em;
}
.vmech-msg.vmech-msg-err{ background:#fcf0f1; color:#691c1f; }
.vmech-meta{ color:#333; font-size: 13px; margin: 8px 0 10px; }
.vmech-split{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 900px){ .vmech-split{ grid-template-columns:1fr; } }
.vmech-services{ font-size: 13px; }
.vmech-service-row{
    display:flex;
    gap:12px;
    align-items:flex-start;
    justify-content:space-between;
    padding:10px 0;
    border-top:1px solid #eee;
}
.vmech-service-row:first-child{ border-top:none; }
.vmech-stamp{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 11px;
    word-break: break-all;
    color:#333;
}
