/* Shared shape policy. Load after page and vendor styles so every Dueon
   surface uses square corners, including dynamically inserted controls.
   Important keeps older, more specific component rules from restoring radii. */
:root {
    --ha-control-radius: 0;
}

body:is(.house-account-shell, .settlement-shell, .auth-shell),
body:is(.house-account-shell, .settlement-shell, .auth-shell) *,
body:is(.house-account-shell, .settlement-shell, .auth-shell) *::before,
body:is(.house-account-shell, .settlement-shell, .auth-shell) *::after,
body:is(.house-account-shell, .settlement-shell, .auth-shell) *::-webkit-scrollbar-thumb,
body:is(.house-account-shell, .settlement-shell, .auth-shell) input::file-selector-button {
    border-radius: 0 !important;
}

/* Circles communicate selection, loading or a chart/status point. */
body:is(.house-account-shell, .settlement-shell, .auth-shell) :is(
    input[type="radio"],
    .radioContainer .checkmark,
    .ks-location-choice-mark,
    .ar-state-spinner,
    .lds-default div,
    .ls-money-dot,
    .ls-shop-status-dot,
    .ls-chart-legend i,
    .ls-pos-source > span,
    .ls-collection-source-key,
    .ls-master-switch-thumb,
    .adyen-checkout__payment-method__radio
),
body:is(.house-account-shell, .settlement-shell, .auth-shell) :is(
    .radioContainer .checkmark,
    .ks-location-choice-mark,
    .ha-toggle-switch,
    .adyen-checkout__payment-method__radio,
    .adyen-checkout__spinner,
    .adyen-checkout__radio_group__label
)::after,
body:is(.house-account-shell, .settlement-shell, .auth-shell) :is(
    .portal-state-chip:is(.success, .info, .warning, .danger, .muted) span,
    .ha-focus-list li,
    .ls-house-theme-checklist-list li,
    .adyen-checkout__spinner,
    .adyen-checkout__radio_group__label
)::before {
    border-radius: 50% !important;
}

/* SVG bar corners are independent of CSS border-radius. */
body.house-account-shell .ha-history-payment-bar {
    rx: 0;
    ry: 0;
}
