/* PDFSchau 6.1.3.1122 - public frontend experience */
.pdfschau-frontend {
    --pdfschau-brand: #075493;
    --pdfschau-brand-deep: #052f5f;
    --pdfschau-brand-bright: #0787d1;
    --pdfschau-action: #12a86f;
    --pdfschau-action-bright: #20c985;
    --pdfschau-ink: #10243d;
    --pdfschau-muted: #607188;
    --pdfschau-surface: #fff;
    --pdfschau-surface-soft: #f4f8fc;
    --pdfschau-line: #dce6ef;
    --pdfschau-focus: #f3b61f;
    --pdfschau-radius-lg: 1.35rem;
    --pdfschau-radius-md: .95rem;
    --pdfschau-shadow: 0 1rem 2.7rem rgb(13 44 76 / 10%);
    --pdfschau-shadow-hover: 0 1.35rem 3.2rem rgb(13 44 76 / 17%);
    width: 100%;
    color: var(--pdfschau-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.pdfschau-frontend *,
.pdfschau-frontend *::before,
.pdfschau-frontend *::after {
    box-sizing: border-box;
}

.pdfschau-frontend .pdfschau-page-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: 13rem;
    margin-bottom: 2rem;
    padding: clamp(1.65rem, 4vw, 3.2rem);
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    overflow: hidden;
    color: #fff;
    border: 0;
    border-radius: var(--pdfschau-radius-lg);
    background:
        radial-gradient(circle at 86% 18%, rgb(255 255 255 / 22%) 0 3.8rem, transparent 3.9rem),
        linear-gradient(125deg, #042a55 0%, var(--pdfschau-brand) 52%, #087d8e 100%);
    box-shadow: inset 0 .35rem 0 #58dfa8, var(--pdfschau-shadow);
}

.pdfschau-frontend .pdfschau-page-hero::before {
    position: absolute;
    z-index: -1;
    right: -5rem;
    bottom: -8rem;
    width: 24rem;
    height: 24rem;
    content: "";
    border: 1px solid rgb(255 255 255 / 18%);
    border-radius: 50%;
}

.pdfschau-frontend .pdfschau-page-hero-copy {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.pdfschau-frontend .pdfschau-eyebrow,
.pdfschau-frontend .pdfschau-section-kicker,
.pdfschau-frontend .pdfschau-dossier-card-kicker {
    display: block;
    margin-bottom: .5rem;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .015em;
    line-height: 1.2;
}

.pdfschau-frontend .pdfschau-eyebrow {
    display: inline-flex;
    padding: .4rem .65rem;
    color: #cffff0 !important;
    border: 1px solid rgb(135 247 202 / 32%);
    border-radius: 999px;
    background: rgb(1 28 56 / 20%);
}

.pdfschau-frontend .pdfschau-page-hero h1 {
    max-width: 18ch;
    margin: 0;
    color: #fff !important;
    font-size: clamp(2.25rem, 5vw, 4.25rem);
    font-weight: 750;
    letter-spacing: -.04em;
    line-height: 1.08;
    overflow-wrap: anywhere;
    text-shadow: 0 .2rem .7rem rgb(0 19 40 / 22%);
}

.pdfschau-frontend .pdfschau-page-hero h1 .pdfschau-brand-primary {
    color: var(--pdfschau-title-primary-color, #fff) !important;
}

.pdfschau-frontend .pdfschau-page-hero h1 .pdfschau-brand-highlight {
    color: var(--pdfschau-title-highlight-color, #79efba) !important;
}

.pdfschau-frontend .pdfschau-page-hero p {
    max-width: 48rem;
    margin: 1rem 0 0;
    color: rgb(255 255 255 / 82%);
    font-size: clamp(1rem, 1.7vw, 1.18rem);
    line-height: 1.55;
}

.pdfschau-frontend .pdfschau-hero-orbit {
    position: absolute;
    z-index: -1;
    right: 6.5rem;
    bottom: -3.6rem;
    width: 10rem;
    height: 10rem;
    border: 1px solid rgb(255 255 255 / 20%);
    border-radius: 50%;
}

.pdfschau-frontend .pdfschau-primary-action {
    position: relative;
    z-index: 1;
    display: inline-flex;
    min-height: 3.2rem;
    padding: .75rem 1.15rem;
    align-items: center;
    justify-content: center;
    gap: .65rem;
    color: #fff;
    border: 1px solid rgb(255 255 255 / 22%);
    border-radius: .8rem;
    background: linear-gradient(135deg, var(--pdfschau-action), var(--pdfschau-action-bright));
    box-shadow: 0 .65rem 1.45rem rgb(2 55 39 / 22%);
    font-weight: 750;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.pdfschau-frontend a.pdfschau-primary-action,
.pdfschau-frontend button.pdfschau-primary-action {
    color: #fff !important;
    border-color: rgb(255 255 255 / 24%) !important;
    background: linear-gradient(135deg, var(--pdfschau-action), var(--pdfschau-action-bright)) !important;
}

.pdfschau-frontend .pdfschau-page-hero a.pdfschau-primary-action {
    color: #053c30 !important;
    border-color: #a9f7d3 !important;
    background: linear-gradient(135deg, #86f3c1, #4fdc9d) !important;
    box-shadow: 0 .8rem 1.8rem rgb(0 34 38 / 28%);
}

.pdfschau-frontend .pdfschau-page-hero a.pdfschau-primary-action .pdfschau-action-icon {
    color: #fff !important;
    background: #08795c !important;
}

.pdfschau-frontend .pdfschau-primary-action:hover,
.pdfschau-frontend .pdfschau-primary-action:focus-visible {
    color: #fff;
    filter: saturate(1.08) brightness(1.04);
    box-shadow: 0 .85rem 1.8rem rgb(2 55 39 / 30%);
    transform: translateY(-2px);
}

.pdfschau-frontend .pdfschau-primary-action:focus-visible,
.pdfschau-frontend a:focus-visible,
.pdfschau-frontend button:focus-visible,
.pdfschau-frontend input:focus-visible,
.pdfschau-frontend select:focus-visible {
    outline: .2rem solid var(--pdfschau-focus);
    outline-offset: .18rem;
}

.pdfschau-frontend .pdfschau-primary-action--compact {
    min-height: 2.65rem;
    padding: .55rem .9rem;
    border-radius: .7rem;
}

.pdfschau-frontend .pdfschau-action-icon {
    display: inline-grid;
    width: 1.55rem;
    height: 1.55rem;
    place-items: center;
    border-radius: 50%;
    background: rgb(255 255 255 / 18%);
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1;
}

.pdfschau-frontend .pdfschau-page-actions {
    min-height: 2.75rem;
    margin-bottom: 1rem;
}

.pdfschau-frontend .pdfschau-back-link {
    gap: .4rem;
    color: var(--pdfschau-brand);
    font-weight: 750;
    text-decoration: none;
}

.pdfschau-frontend .pdfschau-back-link:hover {
    color: var(--pdfschau-brand-deep);
    text-decoration: underline;
}

/* Dossier overview */
.pdfschau-frontend .pdfschau-dossier-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 30rem), 1fr));
    gap: 1rem;
}

.pdfschau-frontend .pdfschau-dossier-card {
    --pdfschau-card-accent: var(--pdfschau-type-accent, var(--pdfschau-brand-bright));
    position: relative;
    display: grid;
    min-height: 10.5rem;
    padding: 1.5rem;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.25rem;
    align-items: center;
    overflow: hidden;
    color: var(--pdfschau-ink);
    border: 1px solid var(--pdfschau-line);
    border-inline-start: .38rem solid var(--pdfschau-card-accent);
    border-radius: var(--pdfschau-radius-md);
    background: linear-gradient(145deg, color-mix(in srgb, var(--pdfschau-card-accent) 7%, #fff), #fff 48%);
    box-shadow: 0 .45rem 1.4rem rgb(13 44 76 / 7%);
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.pdfschau-frontend .pdfschau-dossier-card::after {
    position: absolute;
    right: -2.6rem;
    bottom: -3.8rem;
    width: 9rem;
    height: 9rem;
    content: "";
    border: 1.5rem solid color-mix(in srgb, var(--pdfschau-card-accent) 8%, transparent);
    border-radius: 50%;
    pointer-events: none;
}

.pdfschau-frontend .pdfschau-dossier-card:hover,
.pdfschau-frontend .pdfschau-dossier-card:focus-visible {
    color: var(--pdfschau-ink);
    border-color: color-mix(in srgb, var(--pdfschau-card-accent) 55%, var(--pdfschau-line));
    box-shadow: 0 0 0 .5px var(--pdfschau-card-accent), var(--pdfschau-shadow-hover);
    transform: translateY(-4px);
}

.pdfschau-frontend .pdfschau-dossier-card:focus-visible {
    outline: .2rem solid var(--pdfschau-focus);
    outline-offset: .18rem;
}

.pdfschau-frontend .pdfschau-dossier-card-kicker {
    color: var(--pdfschau-card-accent);
}

.pdfschau-frontend .pdfschau-dossier-card-main {
    display: flex;
    min-width: 0;
    align-self: stretch;
    flex-direction: column;
}

.pdfschau-frontend .pdfschau-dossier-card-heading {
    align-items: center;
    gap: .65rem;
}

.pdfschau-frontend .pdfschau-dossier-card-heading h2 {
    margin: 0;
    color: var(--pdfschau-ink);
    font-size: clamp(1.45rem, 2.3vw, 2.05rem);
    font-weight: 760;
    letter-spacing: -.025em;
    line-height: 1.08;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.pdfschau-frontend .pdfschau-dossier-description {
    max-width: 50rem;
    margin-top: .85rem;
    color: var(--pdfschau-muted);
    line-height: 1.55;
}

.pdfschau-frontend .pdfschau-dossier-subtitle {
    max-width: 50rem;
    margin: .55rem 0 0;
    color: var(--pdfschau-brand-deep);
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.35;
}

.pdfschau-frontend .pdfschau-dossier-period {
    margin: .7rem 0 0;
    color: var(--pdfschau-muted);
    font-size: .82rem;
    font-weight: 650;
}

.pdfschau-frontend .pdfschau-dossier-card-count {
    position: relative;
    z-index: 1;
    min-width: 5.4rem;
    min-height: 5.4rem;
    padding: .55rem;
    color: var(--pdfschau-ink);
    border: 1px solid color-mix(in srgb, var(--pdfschau-card-accent) 25%, var(--pdfschau-line));
    border-radius: .85rem;
    background: rgb(255 255 255 / 82%);
    backdrop-filter: blur(.25rem);
}

.pdfschau-frontend .pdfschau-dossier-card-count strong {
    color: var(--pdfschau-card-accent);
    font-size: 1.75rem;
    font-weight: 800;
}

.pdfschau-frontend .pdfschau-dossier-card-count span {
    color: var(--pdfschau-muted);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .01em;
}

.pdfschau-frontend .pdfschau-card-arrow {
    position: absolute;
    right: 1.05rem;
    bottom: .85rem;
    color: var(--pdfschau-card-accent);
    font-size: 1.4rem;
    transition: transform .18s ease;
}

.pdfschau-frontend .pdfschau-dossier-card:hover .pdfschau-card-arrow,
.pdfschau-frontend .pdfschau-dossier-card:focus-visible .pdfschau-card-arrow {
    transform: translateX(.25rem);
}

.pdfschau-frontend .badge {
    padding: .36rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 760;
    letter-spacing: .015em;
    line-height: 1;
}

.pdfschau-frontend .pdfschau-type-badge-row {
    display: flex;
    margin-top: auto;
    padding-top: .75rem;
    align-items: center;
    justify-content: flex-start;
}

.pdfschau-frontend .pdfschau-type-accent--primary { --pdfschau-type-accent: var(--bs-primary, #0d6efd); }
.pdfschau-frontend .pdfschau-type-accent--secondary { --pdfschau-type-accent: var(--bs-secondary, #6c757d); }
.pdfschau-frontend .pdfschau-type-accent--success { --pdfschau-type-accent: var(--bs-success, #198754); }
.pdfschau-frontend .pdfschau-type-accent--danger { --pdfschau-type-accent: var(--bs-danger, #dc3545); }
.pdfschau-frontend .pdfschau-type-accent--warning { --pdfschau-type-accent: var(--bs-warning, #ffc107); }
.pdfschau-frontend .pdfschau-type-accent--info { --pdfschau-type-accent: var(--bs-info, #0dcaf0); }
.pdfschau-frontend .pdfschau-type-accent--light { --pdfschau-type-accent: var(--bs-border-color, #dee2e6); }
.pdfschau-frontend .pdfschau-type-accent--dark { --pdfschau-type-accent: var(--bs-dark, #212529); }

/* Dossier detail */
.pdfschau-frontend .pdfschau-dossier-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: 12rem;
    margin-bottom: 2rem;
    padding: clamp(1.5rem, 3.5vw, 2.6rem);
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    overflow: hidden;
    color: #fff;
    border: 0;
    border-radius: var(--pdfschau-radius-lg);
    background:
        radial-gradient(circle at 88% 22%, rgb(255 255 255 / 18%) 0 3.4rem, transparent 3.5rem),
        linear-gradient(125deg, var(--pdfschau-brand-deep), var(--pdfschau-brand) 62%, var(--pdfschau-brand-bright));
    box-shadow: var(--pdfschau-shadow);
}

.pdfschau-frontend .pdfschau-dossier-hero::after {
    position: absolute;
    z-index: -1;
    right: -5rem;
    bottom: -8rem;
    width: 23rem;
    height: 23rem;
    content: "";
    border: 1px solid rgb(255 255 255 / 16%);
    border-radius: 50%;
}

.pdfschau-frontend .pdfschau-dossier-hero-title { gap: .75rem; }

.pdfschau-frontend .pdfschau-dossier-hero-title h1 {
    margin: 0;
    color: #fff !important;
    font-size: clamp(2rem, 4.4vw, 3.75rem);
    font-weight: 760;
    letter-spacing: -.035em;
    line-height: 1;
}

.pdfschau-frontend .pdfschau-dossier-hero-description {
    max-width: 54rem;
    margin: 1rem 0 0;
    color: rgb(255 255 255 / 82%);
    font-size: 1.05rem;
    line-height: 1.55;
}

.pdfschau-frontend .pdfschau-dossier-hero-subtitle {
    max-width: 54rem;
    margin: .85rem 0 0;
    color: #fff;
    font-size: clamp(1rem, 1.8vw, 1.25rem);
    font-weight: 700;
    line-height: 1.35;
}

.pdfschau-frontend .pdfschau-dossier-hero-period {
    margin: .75rem 0 0;
    color: rgb(255 255 255 / 76%);
    font-size: .82rem;
    font-weight: 700;
}

.pdfschau-frontend .pdfschau-dossier-hero-count {
    position: relative;
    z-index: 1;
    display: flex;
    min-width: 7rem;
    min-height: 7rem;
    padding: .75rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid rgb(255 255 255 / 25%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 13%);
    backdrop-filter: blur(.45rem);
}

.pdfschau-frontend .pdfschau-dossier-hero-count strong {
    font-size: 2.35rem;
    font-weight: 820;
    line-height: 1;
}

.pdfschau-frontend .pdfschau-dossier-hero-count span {
    margin-top: .35rem;
    color: rgb(255 255 255 / 76%);
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .01em;
}

.pdfschau-frontend .pdfschau-section-heading {
    margin: 0 0 1rem;
    padding: 0 0 .85rem;
    border-bottom: 1px solid var(--pdfschau-line);
}

.pdfschau-frontend .pdfschau-section-kicker {
    margin-bottom: .3rem;
    color: var(--pdfschau-brand-bright);
}

.pdfschau-frontend .pdfschau-section-heading h2 {
    margin: 0;
    color: var(--pdfschau-ink);
    font-size: clamp(1.6rem, 3vw, 2.35rem);
    font-weight: 760;
    letter-spacing: -.03em;
}

.pdfschau-frontend .pdfschau-document-list { gap: .9rem; }

.pdfschau-frontend .pdfschau-document-card {
    --pdfschau-document-accent: var(--pdfschau-type-accent, var(--pdfschau-brand-bright));
    position: relative;
    display: grid;
    min-height: 5.6rem;
    padding: .9rem 1.1rem;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    overflow: hidden;
    color: var(--pdfschau-ink);
    border: 1px solid var(--pdfschau-line);
    border-inline-start: .34rem solid var(--pdfschau-document-accent);
    border-radius: var(--pdfschau-radius-md);
    background: linear-gradient(105deg, color-mix(in srgb, var(--pdfschau-document-accent) 5%, #fff), #fff 34%);
    box-shadow: 0 .35rem 1.2rem rgb(13 44 76 / 6%);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.pdfschau-frontend .pdfschau-document-card:hover {
    border-color: color-mix(in srgb, var(--pdfschau-document-accent) 42%, var(--pdfschau-line));
    box-shadow: 0 0 0 .5px var(--pdfschau-document-accent), var(--pdfschau-shadow-hover);
    transform: translateY(-3px);
}

.pdfschau-frontend .pdfschau-search-result-title {
    margin: 0 0 .45rem;
    font-size: clamp(1.2rem, 2vw, 1.6rem);
    line-height: 1.25;
}

.pdfschau-frontend .pdfschau-search-result-title a {
    color: var(--pdfschau-ink);
    text-decoration-color: var(--pdfschau-document-accent);
    text-underline-offset: .15em;
}

.pdfschau-frontend .pdfschau-search-result-meta {
    margin: .35rem 0 0;
    color: var(--pdfschau-muted);
    font-size: .86rem;
}

.pdfschau-frontend .pdfschau-search-page {
    margin: .35rem 0;
    color: var(--pdfschau-brand-deep);
    font-size: .84rem;
    font-weight: 700;
}

.pdfschau-frontend .pdfschau-document-main {
    display: flex;
    min-width: 0;
    align-self: stretch;
    flex-direction: column;
}

.pdfschau-frontend .pdfschau-document-title-row {
    gap: .65rem;
    align-items: center;
}

.pdfschau-frontend .pdfschau-document-title-row h3 {
    margin: 0;
    color: var(--pdfschau-ink);
    font-size: clamp(1.35rem, 2.4vw, 1.85rem);
    font-weight: 750;
    letter-spacing: -.025em;
    line-height: 1.08;
}

.pdfschau-frontend .pdfschau-document-actions { min-width: 16.9rem; }

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry.is-compact {
    display: grid;
    width: 100%;
    min-width: 16.9rem;
    grid-template-columns: repeat(2, minmax(8.2rem, 1fr));
    gap: .5rem;
}

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-button,
.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry-actions .btn {
    min-height: 2.65rem;
    padding: .62rem .85rem;
    border-radius: .65rem;
    font-weight: 750;
}

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-button {
    color: #fff;
    border-color: var(--pdfschau-brand);
    background: linear-gradient(135deg, var(--pdfschau-brand), var(--pdfschau-brand-bright));
    box-shadow: 0 .45rem 1rem rgb(7 84 147 / 18%);
}

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry-actions {
    display: block;
    width: 100%;
}

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry-actions .btn {
    width: 100%;
    color: var(--pdfschau-brand);
    border-color: color-mix(in srgb, var(--pdfschau-brand) 55%, var(--pdfschau-line));
    background: #fff;
}

.pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry-actions .btn:hover {
    color: #fff;
    border-color: var(--pdfschau-brand);
    background: var(--pdfschau-brand);
}

/* Authorised frontend upload */
.pdfschau-frontend .pdfschau-upload-hero { min-height: 12rem; }

.pdfschau-frontend .pdfschau-upload-hero-mark {
    position: relative;
    z-index: 1;
    display: grid;
    width: 7.2rem;
    height: 7.2rem;
    place-items: center;
    color: #fff;
    border: 1px solid rgb(255 255 255 / 26%);
    border-radius: 1.15rem;
    background: rgb(255 255 255 / 14%);
    box-shadow: inset 0 0 0 .35rem rgb(255 255 255 / 6%);
    font-size: 1.45rem;
    font-weight: 850;
    letter-spacing: .06em;
    transform: rotate(3deg);
}

.pdfschau-frontend .pdfschau-upload-form {
    overflow: hidden;
    border: 1px solid var(--pdfschau-line);
    border-radius: var(--pdfschau-radius-lg);
    background: var(--pdfschau-surface);
    box-shadow: var(--pdfschau-shadow);
}

.pdfschau-frontend .pdfschau-upload-section {
    padding: clamp(1.3rem, 3vw, 2.2rem);
}

.pdfschau-frontend .pdfschau-upload-section + .pdfschau-upload-section {
    border-top: 1px solid var(--pdfschau-line);
    background: var(--pdfschau-surface-soft);
}

.pdfschau-frontend .pdfschau-upload-section-heading {
    display: flex;
    margin-bottom: 1.4rem;
    align-items: flex-start;
    gap: .9rem;
}

.pdfschau-frontend .pdfschau-upload-step {
    display: grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 auto;
    place-items: center;
    color: #fff;
    border-radius: .7rem;
    background: linear-gradient(135deg, var(--pdfschau-brand), var(--pdfschau-brand-bright));
    box-shadow: 0 .4rem .85rem rgb(7 84 147 / 18%);
    font-weight: 800;
}

.pdfschau-frontend .pdfschau-upload-section-heading h2 {
    margin: 0;
    color: var(--pdfschau-ink);
    font-size: 1.35rem;
    font-weight: 760;
    letter-spacing: -.02em;
}

.pdfschau-frontend .pdfschau-upload-section-heading p {
    margin: .25rem 0 0;
    color: var(--pdfschau-muted);
    line-height: 1.45;
}

.pdfschau-frontend .pdfschau-upload-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.pdfschau-frontend .pdfschau-upload-field--wide { grid-column: 1 / -1; }
.pdfschau-frontend .pdfschau-upload-form .control-group { margin: 0; }

.pdfschau-frontend .pdfschau-upload-form label,
.pdfschau-frontend .pdfschau-upload-file-field > label {
    margin-bottom: .45rem;
    color: var(--pdfschau-ink);
    font-weight: 740;
}

.pdfschau-frontend .pdfschau-upload-form input[type="text"],
.pdfschau-frontend .pdfschau-upload-form select {
    min-height: 3.25rem;
    padding: .72rem .9rem;
    color: var(--pdfschau-ink);
    border: 1px solid var(--pdfschau-line);
    border-radius: .7rem;
    background-color: #fff;
    box-shadow: 0 .15rem .45rem rgb(13 44 76 / 4%);
}

.pdfschau-frontend .pdfschau-upload-form input[type="text"]:focus,
.pdfschau-frontend .pdfschau-upload-form select:focus {
    border-color: var(--pdfschau-brand-bright);
    box-shadow: 0 0 0 .22rem rgb(7 135 209 / 12%);
}

.pdfschau-frontend .pdfschau-dropzone {
    position: relative;
    display: flex;
    min-height: 17rem;
    padding: clamp(1.4rem, 4vw, 2.5rem);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--pdfschau-ink);
    border: .14rem dashed color-mix(in srgb, var(--pdfschau-brand-bright) 55%, var(--pdfschau-line));
    border-radius: 1rem;
    background: radial-gradient(circle at 50% 0%, rgb(7 135 209 / 9%), transparent 52%), #fff;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.pdfschau-frontend .pdfschau-dropzone::after {
    position: absolute;
    right: -4rem;
    bottom: -6rem;
    width: 14rem;
    height: 14rem;
    content: "";
    border: 1.6rem solid rgb(7 135 209 / 4%);
    border-radius: 50%;
    pointer-events: none;
}

.pdfschau-frontend .pdfschau-dropzone.is-dragover {
    border-color: var(--pdfschau-action-bright);
    background: color-mix(in srgb, var(--pdfschau-action-bright) 8%, #fff);
    box-shadow: 0 0 0 .28rem rgb(32 201 133 / 13%), var(--pdfschau-shadow);
    transform: scale(1.008);
}

.pdfschau-frontend .pdfschau-dropzone.is-invalid { border-color: var(--bs-danger, #dc3545); }

.pdfschau-frontend .pdfschau-dropzone-mark {
    display: grid;
    width: 4.4rem;
    height: 5.25rem;
    margin-bottom: 1rem;
    place-items: center;
    color: #fff;
    border-radius: .45rem .9rem .45rem .45rem;
    background: linear-gradient(145deg, var(--pdfschau-brand), var(--pdfschau-brand-bright));
    box-shadow: 0 .7rem 1.5rem rgb(7 84 147 / 22%);
    font-size: .95rem;
    font-weight: 850;
    letter-spacing: .07em;
    transform: rotate(-2deg);
}

.pdfschau-frontend .pdfschau-dropzone-prompt {
    position: relative;
    z-index: 1;
    gap: .3rem;
    margin-bottom: 1rem;
}

.pdfschau-frontend .pdfschau-dropzone-prompt strong {
    color: var(--pdfschau-ink);
    font-size: 1.18rem;
    font-weight: 780;
}

.pdfschau-frontend .pdfschau-dropzone-prompt span { color: var(--pdfschau-muted); }

.pdfschau-frontend .pdfschau-dropzone .form-control {
    position: relative;
    z-index: 1;
    max-width: 42rem;
    min-height: 2.9rem;
    color: var(--pdfschau-ink);
    border-color: var(--pdfschau-line);
    border-radius: .65rem;
    background: #fff;
}

.pdfschau-frontend .pdfschau-dropzone-selection {
    position: relative;
    z-index: 1;
    min-height: 1.4rem;
    margin-top: .6rem;
    color: var(--pdfschau-action);
    font-weight: 760;
}

.pdfschau-frontend .pdfschau-upload-submit-row {
    display: flex;
    padding: 1.25rem clamp(1.3rem, 3vw, 2.2rem);
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-top: 1px solid var(--pdfschau-line);
    background: var(--pdfschau-brand-deep);
}

.pdfschau-frontend .pdfschau-upload-submit-row p {
    max-width: 44rem;
    margin: 0;
    color: rgb(255 255 255 / 72%);
    font-size: .88rem;
    line-height: 1.45;
}

.pdfschau-frontend .pdfschau-upload-submit { min-width: 12rem; }

/* Mass-ready public lists: bounded server-side search, limits and pagination. */
.pdfschau-frontend .pdfschau-list-tools {
    display: grid;
    margin: 0 0 1.25rem;
    padding: 1rem;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: end;
    border: 1px solid var(--pdfschau-line);
    border-radius: var(--pdfschau-radius-md);
    background: var(--pdfschau-surface-soft);
}

.pdfschau-frontend .pdfschau-search-tools {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
}

.pdfschau-frontend .pdfschau-search-tools .pdfschau-list-search {
    grid-column: 1 / -1;
}

.pdfschau-frontend .pdfschau-search-tools .pdfschau-search-reset {
    justify-self: start;
}

.pdfschau-frontend .pdfschau-list-tools label {
    display: block;
    margin-bottom: .4rem;
    color: var(--pdfschau-ink);
    font-size: .78rem;
    font-weight: 780;
    letter-spacing: .035em;
}

.pdfschau-frontend .pdfschau-category-filter {
    min-width: 0;
}

.pdfschau-frontend .pdfschau-category-filter summary {
    width: fit-content;
    color: var(--pdfschau-brand);
    cursor: pointer;
    font-weight: 740;
}

.pdfschau-frontend .pdfschau-category-filter[open] .pdfschau-list-search {
    margin-top: .85rem;
}

.pdfschau-frontend .pdfschau-list-search-row {
    display: flex;
    gap: .55rem;
}

.pdfschau-frontend .pdfschau-list-search input,
.pdfschau-frontend .pdfschau-list-limit select {
    min-height: 2.8rem;
    color: var(--pdfschau-ink);
    border: 1px solid color-mix(in srgb, var(--pdfschau-brand) 26%, var(--pdfschau-line));
    border-radius: .65rem;
    background: var(--pdfschau-surface);
}

.pdfschau-frontend .pdfschau-list-search input {
    width: min(100%, 42rem);
    padding: .65rem .85rem;
}

.pdfschau-frontend .pdfschau-list-limit select {
    min-width: 5.6rem;
    padding: .55rem 2rem .55rem .7rem;
}

.pdfschau-frontend .pdfschau-search-submit,
.pdfschau-frontend .pdfschau-search-reset {
    display: inline-flex;
    min-height: 2.8rem;
    padding: .6rem 1rem;
    align-items: center;
    justify-content: center;
    border-radius: .65rem;
    font-weight: 740;
}

.pdfschau-frontend .pdfschau-search-submit {
    color: #fff !important;
    border: 1px solid var(--pdfschau-brand) !important;
    background: var(--pdfschau-brand) !important;
}

.pdfschau-frontend .pdfschau-search-reset {
    color: var(--pdfschau-brand) !important;
    border: 1px solid color-mix(in srgb, var(--pdfschau-brand) 42%, var(--pdfschau-line)) !important;
    background: var(--pdfschau-surface) !important;
    text-decoration: none;
}

.pdfschau-frontend .pdfschau-pagination {
    display: flex;
    margin-top: 1.4rem;
    padding-top: 1rem;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-top: 1px solid var(--pdfschau-line);
}

.pdfschau-frontend .pdfschau-pagination-counter {
    color: var(--pdfschau-muted);
    font-size: .86rem;
}

.pdfschau-frontend .pdfschau-pagination .pagination {
    margin: 0;
    flex-wrap: wrap;
    gap: .2rem;
}

.pdfschau-frontend .pdfschau-pagination .page-link {
    color: var(--pdfschau-brand);
    border-color: var(--pdfschau-line);
    border-radius: .5rem;
    background: var(--pdfschau-surface);
}

.pdfschau-frontend .pdfschau-pagination .active > .page-link,
.pdfschau-frontend .pdfschau-pagination .page-link:hover,
.pdfschau-frontend .pdfschau-pagination .page-link:focus-visible {
    color: #fff;
    border-color: var(--pdfschau-brand);
    background: var(--pdfschau-brand);
}

[data-bs-theme="dark"] .pdfschau-frontend,
body[data-bs-theme="dark"] .pdfschau-frontend,
html[data-bs-theme="dark"] .pdfschau-frontend {
    --pdfschau-ink: #e9f1fa;
    --pdfschau-muted: #a9b7c8;
    --pdfschau-surface: #101b2a;
    --pdfschau-surface-soft: #0d1724;
    --pdfschau-line: rgb(173 190 214 / 18%);
}

[data-bs-theme="dark"] .pdfschau-frontend .pdfschau-dossier-card,
[data-bs-theme="dark"] .pdfschau-frontend .pdfschau-document-card,
[data-bs-theme="dark"] .pdfschau-frontend .pdfschau-document-meta-item,
[data-bs-theme="dark"] .pdfschau-frontend .pdfschau-upload-form,
[data-bs-theme="dark"] .pdfschau-frontend .pdfschau-dropzone {
    background: var(--pdfschau-surface);
}

@media (max-width: 991.98px) {
    .pdfschau-frontend .pdfschau-document-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .pdfschau-frontend .pdfschau-document-actions {
        grid-column: auto;
        width: 100%;
    }

    .pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry.is-compact {
        grid-template-columns: repeat(2, minmax(7.5rem, 1fr));
    }
}

@media (max-width: 767.98px) {
    .pdfschau-frontend {
        --pdfschau-radius-lg: 1rem;
        --pdfschau-radius-md: .8rem;
    }

    .pdfschau-frontend .pdfschau-page-hero,
    .pdfschau-frontend .pdfschau-dossier-hero {
        min-height: 0;
        padding: 1.5rem;
        grid-template-columns: minmax(0, 1fr);
        gap: 1.4rem;
    }

    .pdfschau-frontend .pdfschau-page-hero h1,
    .pdfschau-frontend .pdfschau-dossier-hero-title h1 {
        font-size: clamp(2rem, 11vw, 3rem);
    }

    .pdfschau-frontend .pdfschau-upload-button { width: 100%; }
    .pdfschau-frontend .pdfschau-upload-hero-mark { display: none; }

    .pdfschau-frontend .pdfschau-dossier-hero-count {
        min-width: 0;
        min-height: 0;
        padding: .8rem 1rem;
        flex-direction: row;
        justify-content: flex-start;
        gap: .5rem;
    }

    .pdfschau-frontend .pdfschau-dossier-hero-count strong { font-size: 1.6rem; }
    .pdfschau-frontend .pdfschau-dossier-hero-count span { margin-top: 0; }

    .pdfschau-frontend .pdfschau-dossier-card {
        min-height: 0;
        padding: 1.2rem;
        grid-template-columns: minmax(0, 1fr);
    }

    .pdfschau-frontend .pdfschau-dossier-card-count {
        width: fit-content;
        min-width: 0;
        min-height: 0;
        padding: .5rem .7rem;
        flex-direction: row;
        gap: .4rem;
    }

    .pdfschau-frontend .pdfschau-dossier-card-count strong { font-size: 1.25rem; }

    .pdfschau-frontend .pdfschau-document-card {
        min-height: 0;
        padding: 1rem;
        grid-template-columns: minmax(0, 1fr);
        gap: .85rem;
    }

    .pdfschau-frontend .pdfschau-document-actions {
        grid-column: auto;
        min-width: 0;
    }

    .pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry.is-compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pdfschau-frontend .pdfschau-upload-fields { grid-template-columns: minmax(0, 1fr); }
    .pdfschau-frontend .pdfschau-upload-field--wide { grid-column: auto; }

    .pdfschau-frontend .pdfschau-dropzone {
        min-height: 15rem;
        padding: 1.25rem;
    }

    .pdfschau-frontend .pdfschau-upload-submit-row {
        align-items: stretch;
        flex-direction: column;
    }

    .pdfschau-frontend .pdfschau-upload-submit { width: 100%; }

    .pdfschau-frontend .pdfschau-list-tools {
        grid-template-columns: minmax(0, 1fr);
    }

    .pdfschau-frontend .pdfschau-list-limit select { width: 100%; }

    .pdfschau-frontend .pdfschau-pagination {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 479.98px) {
    .pdfschau-frontend .pdfschau-document-actions .pdfschau-viewer-entry.is-compact {
        grid-template-columns: minmax(0, 1fr);
    }

    .pdfschau-frontend .pdfschau-page-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .pdfschau-frontend .pdfschau-page-actions .pdfschau-primary-action { width: 100%; }

    .pdfschau-frontend .pdfschau-list-search-row {
        align-items: stretch;
        flex-direction: column;
    }

    .pdfschau-frontend .pdfschau-list-search input { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .pdfschau-frontend .pdfschau-primary-action,
    .pdfschau-frontend .pdfschau-dossier-card,
    .pdfschau-frontend .pdfschau-document-card,
    .pdfschau-frontend .pdfschau-card-arrow,
    .pdfschau-frontend .pdfschau-dropzone {
        transition: none;
    }
}

.pdfschau-frontend.pdfschau-help-view {
    max-width: 58rem;
    margin-inline: auto;
    line-height: 1.65;
}

.pdfschau-frontend.pdfschau-help-view nav,
.pdfschau-frontend.pdfschau-help-view section {
    margin: 1.25rem 0;
    padding: 1.25rem;
    border: 1px solid var(--pdfschau-line);
    border-radius: var(--pdfschau-radius-md);
    background: var(--pdfschau-surface);
}

.pdfschau-frontend.pdfschau-help-view section:target {
    border-color: var(--pdfschau-brand-bright);
}

.pdfschau-frontend.pdfschau-help-view h2 {
    margin-top: 0;
    color: var(--pdfschau-ink);
    font-size: 1.35rem;
}
