.hw-v2 .hw-resource-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.hw-v2 .hw-resource-options[data-option-count="6"] .hw-resource-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hw-v2 .hw-resource-card { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-width: 0; padding: 18px 20px; border: 2px solid var(--border-strong); border-radius: var(--r-md); background: var(--bg-elevated); color: var(--fg-strong); text-align: left; cursor: pointer; }
.hw-v2 .hw-resource-card strong { font-size: 15px; line-height: 1.45; }
.hw-v2 .hw-resource-card > span { color: var(--fg-muted); font-size: 14px; }
.hw-v2 .hw-resource-card:hover:not(:disabled) { border-color: var(--fg-strong); background: var(--bg-muted); }
.hw-v2 .hw-resource-card[aria-checked="true"], .hw-v2 .hw-resource-disks .hw-resource-selected { border-color: var(--fg-strong); background: color-mix(in srgb, var(--accent) 10%, var(--bg-elevated)); box-shadow: inset 0 4px 0 var(--accent); }
.hw-v2 .hw-resource-card:focus-visible, .hw-v2 .hw-resource-disks button:focus-visible { outline: 3px solid var(--fg-strong); outline-offset: 3px; }
.hw-v2 .hw-resource-card:disabled, .hw-v2 .hw-resource-disks button:disabled { opacity: .45; cursor: not-allowed; }
.hw-v2 .hw-resource-summary { margin: 0 0 8px; color: var(--fg-strong); font-weight: 600; }
.hw-v2 .hw-resource-help { margin: 0 0 16px; color: var(--fg-muted); font-size: 14px; }
.hw-v2 .hw-resource-disks .hw-slot-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px; margin-bottom: 12px; padding: 18px 20px; border: 2px solid var(--border-strong); border-radius: var(--r-md); background: var(--bg-elevated); }
.hw-v2 .hw-resource-disks .hw-slot-label, .hw-v2 .hw-resource-disks .hw-slot-price, .hw-v2 .hw-resource-disks .hw-slot-action { width: auto; padding: 0; }
.hw-v2 .hw-resource-limit { display: block; margin-top: 4px; color: var(--fg-muted); }
.hw-v2 [data-hw-resource-disks][data-invalid="true"] .hw-resource-summary { padding: 12px; border: 2px solid var(--fg-strong); border-radius: var(--r-md); }
.hw-v2 .hw-rescale-resource > .row > .col-md-4, .hw-v2 .hw-rescale-resource > .row > .col-md-1 { display: none !important; }
.hw-v2 .hw-rescale-resource > .row > .col-md-7 { flex: 0 0 100%; width: 100%; max-width: 100%; }
.hw-v2 .hw-resource-current { margin: 0 0 12px; color: var(--fg-muted); font-size: 14px; }
.hw-v2 #rescaleForm .payment-method-selection { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.hw-v2 #rescaleForm .payment-method-selection > .custom-control { display: flex !important; flex-direction: column; align-items: stretch !important; gap: 18px; margin: 0 !important; padding: 22px 26px; border: 2px solid var(--border-strong); border-radius: var(--r-md); background: var(--bg-elevated); }
.hw-v2 #rescaleForm .payment-method-selection > .custom-control:has(input:checked) { border-color: var(--fg-strong); background: color-mix(in srgb, var(--accent) 10%, var(--bg-elevated)); box-shadow: inset 0 4px 0 var(--accent); }
.hw-v2 #rescaleForm .payment-method-selection > .custom-control:has(input:focus-visible) { outline: 3px solid var(--fg-strong); outline-offset: 3px; }
.hw-v2 #rescaleForm .payment-method-selection .custom-control-label { margin-left: 24px; cursor: pointer; }
.hw-v2 #rescaleForm .payment-method-selection label > strong { font-size: 20px; }
.hw-v2 #rescaleForm .payment-method-selection label > p { margin-top: 12px; color: var(--fg-muted); font-size: 14px; line-height: 1.6; }
.hw-v2 #rescaleForm .payment-method-selection .ml-auto { margin: auto 0 0 !important; padding-top: 16px; border-top: 1px solid var(--border-strong); text-align: left !important; }
.hw-v2 #rescaleForm .payment-method-selection .badge { align-self: flex-start; margin-top: auto; }
@media (max-width: 991px) {
    .hw-v2 .hw-resource-cards, .hw-v2 .hw-resource-options[data-option-count="6"] .hw-resource-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
    .hw-v2 .hw-resource-cards, .hw-v2 .hw-resource-options[data-option-count="6"] .hw-resource-cards { grid-template-columns: minmax(0, 1fr); }
    .hw-v2 .hw-resource-disks .hw-slot-item { grid-template-columns: auto minmax(0, 1fr); gap: 12px; padding: 16px; }
    .hw-v2 .hw-resource-disks .hw-slot-price { grid-column: 2; }
}
