/**
 * File: assets/css/frontend/pages/system.css
 * Purpose: Styles safe 404, attachment and theme-owned system-page fallback surfaces.
 * Scope: T8 system pages only; commerce error states and protected downloads are excluded.
 * Related PHP: 404.php, attachment.php, src/Frontend/Pages/NotFoundRenderer.php
 * Related CSS: assets/css/frontend/pages/page.css
 * Related JS: None
 * Package: HyperDAF Pro
 */

.hdf-system-page { width: min(calc(100% - (2 * var(--hdf-layout-gutter-desktop))), var(--hdf-page-wide-width)); margin-inline: auto; padding-block: var(--hdf-spacing-10); }
.hdf-system-page__inner { width: min(100%, var(--hdf-system-page-width, var(--hdf-page-system-width))); margin-inline: auto; padding: var(--hdf-spacing-8); border: var(--hdf-border-width-default) solid transparent; border-radius: var(--hdf-radius-xl); text-align: center; }
.hdf-system-page--bordered .hdf-system-page__inner,
.hdf-system-page--panel .hdf-system-page__inner { border-color: var(--hdf-color-border); background: var(--hdf-color-surface); }
.hdf-system-page--elevated .hdf-system-page__inner { border-color: var(--hdf-color-border); background: var(--hdf-color-surface); box-shadow: none; }
.hdf-system-page__eyebrow { margin: 0 0 var(--hdf-spacing-3); color: var(--hdf-color-primary-strong); font-size: var(--hdf-typography-size-xs); font-weight: var(--hdf-typography-weight-bold); letter-spacing: var(--hdf-typography-letter-spacing-wide); text-transform: uppercase; }
.hdf-system-page h1 { margin: 0; font-size: clamp(var(--hdf-typography-size-3xl), 6vw, 3.25rem); line-height: var(--hdf-typography-line-height-tight); }
.hdf-system-page__message { margin: var(--hdf-spacing-4) auto 0; color: var(--hdf-color-text-secondary); }
.hdf-system-page__search { max-width: 34rem; margin: var(--hdf-spacing-6) auto 0; }
.hdf-system-page__search .search-form { display: flex; }
.hdf-system-page__search .search-field { min-width: 0; flex: 1; min-height: 2.75rem; padding-inline: var(--hdf-spacing-3); border: var(--hdf-border-width-default) solid var(--hdf-color-border); border-radius: var(--hdf-radius-md) 0 0 var(--hdf-radius-md); }
.hdf-system-page__search .search-submit { min-height: 2.75rem; padding-inline: var(--hdf-spacing-4); border: 0; border-radius: 0 var(--hdf-radius-md) var(--hdf-radius-md) 0; background: var(--hdf-color-primary-strong); color: var(--hdf-color-on-primary-strong); cursor: pointer; }
.hdf-system-page__actions { margin: var(--hdf-spacing-6) 0 0; }
.hdf-button { display: inline-flex; min-height: 2.75rem; align-items: center; justify-content: center; padding-inline: var(--hdf-spacing-5); border-radius: var(--hdf-radius-md); font-weight: var(--hdf-typography-weight-semibold); text-decoration: none; }
.hdf-button--primary { background: var(--hdf-color-primary-strong); color: var(--hdf-color-on-primary-strong); }
.hdf-button--primary:hover { background: var(--hdf-color-primary-hover); color: var(--hdf-color-on-primary-strong); }
.hdf-attachment-page__media { margin-top: var(--hdf-spacing-6); }
.hdf-attachment-page__image { margin-inline: auto; border-radius: var(--hdf-radius-lg); }
.hdf-attachment-page__caption { margin: var(--hdf-spacing-3) 0 0; color: var(--hdf-color-text-muted); font-size: var(--hdf-typography-size-sm); }
.hdf-attachment-page__description { margin-top: var(--hdf-spacing-6); text-align: start; }
