/* Default public theme. Author: Daniel Padureanu - DigiData <office@digi-data.ro> */
@import url("fonts.css");
@import url("tokens.css");
@import url("base.css");
@import url("components.css?v=24");
@import url("layout.css?v=3");

.dc-rich-content a {
    text-decoration: underline;
}

.dc-wrap {
    width: 100%;
    max-width: var(--dc-wrap);
    margin: 0 auto;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
}

/* Home */
.dc-hero {
    padding: 3rem 0;
    background: var(--dc-hero);
    border-bottom: 1px solid var(--dc-border);
}

.dc-lead {
    max-width: 42rem;
    color: var(--dc-muted);
    font-size: 1.15rem;
}

.dc-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    margin: 1.5rem 0 0;
}

.dc-section {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.dc-document-card__meta {
    color: var(--dc-muted);
}

.dc-document-card__preview {
    margin: 1rem 0;
    border: 1px solid var(--dc-border);
    border-radius: var(--dc-radius);
    overflow: hidden;
    background: var(--dc-surface);
}

.dc-document-card__frame {
    display: block;
    width: 100%;
    min-height: 24rem;
    border: 0;
}

.dc-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: 1.25rem;
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0;
}

.dc-gallery__link {
    display: block;
    border-radius: var(--dc-radius);
    overflow: hidden;
    border: 1px solid var(--dc-border);
    background: var(--dc-surface);
}

.dc-gallery__link:focus-visible {
    outline: 3px solid var(--dc-accent);
    outline-offset: 2px;
}

.dc-gallery__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.dc-gallery__caption {
    margin: 0.35rem 0 0;
    font-size: 0.875rem;
    color: var(--dc-muted);
}

/* Text and error pages */
.dc-prose {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

/* Lines stay readable (about 46rem) while the block lines up with the header. */
.dc-prose > * {
    max-width: var(--dc-prose);
}

.dc-contact-page {
    text-align: center;
}

.dc-contact-page > h1,
.dc-contact-page > p {
    margin-inline: auto;
}

.dc-contact-page .dc-contact-form,
.dc-contact-page > .dc-alert,
.dc-contact-page > .dc-hint {
    width: 100%;
    max-width: calc(var(--dc-prose) * 0.6);
    margin-inline: auto;
    text-align: left;
}

.dc-contact-form .dc-form__submit {
    text-align: center;
}

.dc-contact-form .dc-field textarea {
    min-height: 6rem;
}

.dc-error__status {
    margin: 0;
    color: var(--dc-accent);
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
}

.dc-page__code {
    color: var(--dc-muted);
    font-family: var(--dc-font-mono);
}

/* Basic pages (technical status, last-resort error page) */
.dc-page {
    max-width: 40rem;
    margin: 0 auto;
    padding: 3rem 1.25rem;
}

.dc-menu-table__child .dc-menu-table__indent {
    color: var(--dc-muted);
    margin-right: 0.35rem;
}

.dc-menu-table__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.5rem;
    align-items: center;
}

.dc-menu-edit {
    margin: 1.25rem 0 2rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--dc-border);
    border-radius: var(--dc-radius);
    background: var(--dc-surface);
}

.dc-auth {
    display: flex;
    justify-content: center;
    padding: 3rem 1.25rem 4rem;
}

.dc-auth__card {
    width: min(100%, 22rem);
    min-width: 0;
    padding: 2rem 1.5rem 1.5rem;
    border: 1px solid var(--dc-border);
    border-radius: calc(var(--dc-radius) + 0.25rem);
    background: var(--dc-surface);
    overflow-wrap: anywhere;
}

.dc-auth__card h1,
.dc-auth__card > p {
    margin: 0;
    text-align: center;
}

.dc-auth__card h1 {
    margin-bottom: 0.5rem;
    font-size: 1.75rem;
}

.dc-auth__card > p {
    color: var(--dc-muted);
}

.dc-auth__card > .dc-alert,
.dc-auth__card > .dc-auth__back {
    margin-top: 1.25rem;
}

.dc-auth .dc-field textarea {
    min-height: 14rem;
}

.dc-qr-wrap {
    display: flex;
    justify-content: center;
    margin: 1rem 0;
}

.dc-qr {
    width: 12rem;
    height: 12rem;
}

.dc-auth__back {
    margin-top: 1.25rem;
}

.dc-auth .dc-alert {
    text-align: center;
}

.dc-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem 0.5rem;
}

.dc-search__label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.dc-search--header {
    flex: 1 1 12rem;
    max-width: 18rem;
}

.dc-search--header .dc-search__input {
    flex: 1 1 6rem;
    min-width: 0;
}

.dc-search__row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.dc-search--page {
    margin-block: 1.25rem 1.5rem;
}

.dc-search--page .dc-search__input {
    flex: 1 1 12rem;
    min-width: min(100%, 16rem);
}

.dc-search__input {
    padding: 0.4rem 0.65rem;
    border: 1px solid var(--dc-border);
    border-radius: var(--dc-radius-sm);
    background: var(--dc-surface);
    color: var(--dc-text);
}

.dc-search__submit {
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--dc-border);
    border-radius: var(--dc-radius-sm);
    background: var(--dc-surface-raised);
    color: var(--dc-text);
    cursor: pointer;
    font: inherit;
}

.dc-search__submit:hover {
    border-color: var(--dc-accent);
}

.dc-search-page .dc-hint {
    color: var(--dc-muted);
}

.dc-search-page .dc-search--page,
.dc-search-page .dc-search-results {
    max-width: var(--dc-prose);
}

.dc-search-results {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0;
    display: grid;
    gap: 1.25rem;
}

.dc-search-results__title {
    font-weight: 600;
    font-size: 1.1rem;
}

.dc-search-results__meta {
    margin: 0.2rem 0 0;
    font-size: 0.875rem;
    color: var(--dc-muted);
}

.dc-search-results__excerpt {
    margin: 0.35rem 0 0;
    color: var(--dc-text);
}

.dc-footer__nav--legal .dc-footer__links {
    font-size: 0.875rem;
}
