@import url("./tokens.css");
@import url("./fonts.css");
@import url("./administration.css");

/* Opt-in adapter for migrated applications. Legacy page CSS may override these.
 * Do not load alongside Lumo's compact preset: density is explicit here.
 */
html {
    --lumo-font-family-monospace: var(--pacrd-theme-font-data);
    --lumo-font-size-l: 18px;
    --lumo-font-size-xl: 24px;
    --lumo-font-size-xxl: 32px;
    --lumo-line-height-m: 1.5333;
    --lumo-contrast-5pct: color-mix(in srgb, var(--pacrd-theme-text) 5%, transparent);
    --lumo-contrast-10pct: color-mix(in srgb, var(--pacrd-theme-text) 10%, transparent);
    --lumo-contrast-20pct: color-mix(in srgb, var(--pacrd-theme-text) 20%, transparent);
    --lumo-contrast-30pct: color-mix(in srgb, var(--pacrd-theme-text) 30%, transparent);
    --lumo-contrast-40pct: color-mix(in srgb, var(--pacrd-theme-text) 40%, transparent);
    --lumo-contrast-50pct: color-mix(in srgb, var(--pacrd-theme-text) 50%, transparent);
    --lumo-contrast-60pct: color-mix(in srgb, var(--pacrd-theme-text) 60%, transparent);
    --lumo-contrast-70pct: color-mix(in srgb, var(--pacrd-theme-text) 70%, transparent);
    --lumo-contrast-80pct: color-mix(in srgb, var(--pacrd-theme-text) 80%, transparent);
    --lumo-contrast-90pct: color-mix(in srgb, var(--pacrd-theme-text) 90%, transparent);
    --lumo-contrast: var(--pacrd-theme-text);
    --lumo-header-text-color: var(--pacrd-theme-text);
    --lumo-success-text-color: var(--pacrd-theme-link);
    --lumo-warning-text-color: var(--pacrd-theme-text);
    --lumo-error-text-color: var(--pacrd-theme-danger-text);
    --lumo-font-family: var(--pacrd-theme-font-body);
    --lumo-font-size-m: var(--pacrd-theme-font-size-body);
    --lumo-font-size-s: var(--pacrd-theme-font-size-small);
    --lumo-font-size-xs: var(--pacrd-theme-font-size-label);
    --lumo-size-m: var(--pacrd-theme-control-height);
    --lumo-space-xs: var(--pacrd-theme-space-xs);
    --lumo-space-s: var(--pacrd-theme-space-s);
    --lumo-space-m: var(--pacrd-theme-space-m);
    --lumo-space-l: var(--pacrd-theme-space-l);
    --lumo-space-xl: var(--pacrd-theme-space-xl);
    --lumo-border-radius: var(--pacrd-theme-radius);
    --lumo-border-radius-s: var(--pacrd-theme-radius);
    --lumo-border-radius-m: var(--pacrd-theme-radius);
    --lumo-border-radius-l: var(--pacrd-theme-radius);
    --lumo-base-color: var(--pacrd-theme-canvas);
    --lumo-body-text-color: var(--pacrd-theme-text);
    --lumo-secondary-text-color: var(--pacrd-theme-text-muted);
    --lumo-primary-color: var(--pacrd-theme-action);
    --lumo-primary-text-color: var(--pacrd-theme-link);
    --lumo-primary-contrast-color: var(--pacrd-theme-action-text);
    --lumo-primary-color-10pct: color-mix(in srgb, var(--pacrd-theme-action) 10%, transparent);
    --lumo-primary-color-50pct: color-mix(in srgb, var(--pacrd-theme-action) 50%, transparent);
    --lumo-success-color: var(--pacrd-theme-success);
    --lumo-warning-color: var(--pacrd-theme-warning);
    --lumo-error-color: var(--pacrd-theme-danger);
}

/* Shared component foundations. Applications retain layout and workflow ownership. */
vaadin-button { font-weight: 500; }
vaadin-button[theme~="primary"]:not([theme~="error"]) {
    background: var(--pacrd-theme-action);
    color: var(--pacrd-theme-action-text);
    box-shadow: none;
}
vaadin-button[theme~="primary"]:not([theme~="error"]):not([disabled]):hover {
    background: color-mix(in srgb, var(--pacrd-theme-action) 88%, #000);
}
vaadin-button[focus-ring], vaadin-tab[focus-ring] {
    outline: 2px solid var(--pacrd-theme-link);
    outline-offset: 2px;
}
@media (pointer: coarse) {
    html { --lumo-size-m: 44px; }
}
