/*
 * Carinthia University of Applied Sciences — ResourceSpace UI theme
 * Tokens from CU Design Guidelines 2026
 *
 * New Era             #FF4332
 * Bold Heritage       #E63525
 * Next Generation     #B6ECEC  (digital accent — CTAs / highlights)
 * Light Foundation    #F2F2F2
 * Neutral Foundation  #CCCCCC
 * Balanced Foundation #ADADAD
 * Solid Foundation    #737373
 * Functional Black    #000000
 * Neutral Core        #FFFFFF
 */

:root {
    --cu-new-era: #FF4332;
    --cu-bold-heritage: #E63525;
    --cu-next-generation: #B6ECEC;
    --cu-light-foundation: #F2F2F2;
    --cu-neutral-foundation: #CCCCCC;
    --cu-balanced-foundation: #ADADAD;
    --cu-solid-foundation: #737373;
    --cu-functional-black: #000000;
    --cu-neutral-core: #FFFFFF;

    /* Map CU brand onto ResourceSpace design tokens */
    --colour-brand-primary-default: #FF4332;
    --colour-brand-primary-hover: #FF5A4A;
    --colour-brand-primary-dark: #E63525;
    --colour-brand-primary-darkest: #B82A1C;
    --colour-brand-primary-light: #FFE8E5;
    --colour-brand-primary-lightest: #FFF5F4;

    /* Neutrals nudged toward CU foundations */
    --colour-neutral-100: #F2F2F2;
    --colour-neutral-200: #F2F2F2;
    --colour-neutral-300: #E8E8E8;
    --colour-neutral-400: #CCCCCC;
    --colour-neutral-500: #ADADAD;
    --colour-neutral-600: #737373;

    --colour-surface-breadcrumb-background: var(--colour-brand-primary-lightest);
    --colour-surface-card-accent: var(--colour-brand-primary-default);
    --colour-surface-card-icon: var(--colour-brand-primary-default);
    --colour-surface-card-icon-background: var(--colour-brand-primary-lightest);
    --colour-surface-card-icon-background-hover: var(--colour-brand-primary-light);
    --colour-surface-page-title-background: var(--cu-light-foundation);
    --colour-surface-view-background: var(--cu-light-foundation);

    --form-focus: var(--colour-brand-primary-default);
    --form-form-chip-background: var(--colour-brand-primary-lightest);
    --form-form-chip-label: var(--colour-brand-primary-dark);
    --form-form-chip-stroke: var(--colour-brand-primary-default);
    --form-tooltip-background: var(--colour-brand-primary-light);
    --form-tooltip-stroke: var(--colour-brand-primary-default);
}

/* Override all built-in colour themes with CU New Era */
.mode-blue,
.mode-green,
.mode-purple,
.mode-red {
    --colour-brand-primary-default: #FF4332;
    --colour-brand-primary-hover: #FF5A4A;
    --colour-brand-primary-dark: #E63525;
    --colour-brand-primary-darkest: #B82A1C;
    --colour-brand-primary-light: #FFE8E5;
    --colour-brand-primary-lightest: #FFF5F4;
}

/* Page foundation */
body,
html {
    color: #474747;
    background: var(--cu-light-foundation);
}

h1,
h2 {
    color: var(--cu-functional-black);
}

/* Header — Neutral Core with Functional Black links */
#Header {
    background: var(--cu-neutral-core);
    border-bottom: 1px solid var(--cu-neutral-foundation);
}

#Header .HeaderImgLink img,
#HeaderImg {
    max-height: 52px;
    width: auto;
}

#Header .UploadButton a {
    color: var(--cu-neutral-core);
}

/* Login logo sits on #login_box (already Neutral Core) — no extra plate */
#LoginHeader {
    background: transparent;
    padding: 0;
    margin-bottom: var(--space-24);
}

#LoginHeader img,
#LoginHeader .LoginHeaderImg {
    max-height: 64px;
    width: auto;
}

#login_box {
    background: var(--cu-neutral-core);
}

/*
 * Login page only — CU gray pattern sits under the whole page;
 * form stays above on Neutral Core.
 */
#UICenter.NoSearch.LoginPage {
    display: block;
    position: relative;
    min-height: 100%;
    background-color: var(--cu-light-foundation);
    background-image: url("../gfx/login-pattern.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#UICenter.NoSearch.LoginPage > #CentralSpaceLogin {
    position: relative;
    z-index: 1;
    width: auto;
    max-width: 434px;
    margin: 0 auto;
    padding: var(--space-48) var(--space-32);
    box-sizing: border-box;
    background: transparent;
}

/* Hide empty slideshow chrome; real Admin slides still work if enabled */
#UICenter.NoSearch.LoginPage > #login-slideshow:empty {
    display: none;
}

#UICenter.NoSearch.LoginPage.slideshow-enabled {
    display: flex;
    background-image: url("../gfx/login-pattern.svg");
    background-size: cover;
    background-position: center;
}

#UICenter.NoSearch.LoginPage.slideshow-enabled > #CentralSpaceLogin {
    width: 434px;
    max-width: none;
    margin: 0;
    padding: var(--space-48) 120px;
    flex-shrink: 0;
}

#UICenter.NoSearch.LoginPage.slideshow-enabled > #login-slideshow {
    display: block;
    flex: 1;
    position: relative;
    min-height: 100%;
    /* Pattern remains under the page; slides overlay on the right */
    background: transparent;
}

@media (max-width: 1366px) {
    #UICenter.NoSearch.LoginPage.slideshow-enabled > #CentralSpaceLogin {
        padding: var(--space-48) var(--space-32);
    }
}

@media (max-width: 768px) {
    #UICenter.NoSearch.LoginPage > #CentralSpaceLogin {
        width: 422px;
        max-width: calc(100% - var(--space-32));
        padding-top: var(--space-32);
    }

    #UICenter.NoSearch.LoginPage.slideshow-enabled {
        flex-direction: column;
    }

    #UICenter.NoSearch.LoginPage.slideshow-enabled > #CentralSpaceLogin {
        overflow-y: visible;
        order: 2;
        margin: 0 auto;
        width: 422px;
    }
}

@media (max-width: 498px) {
    #UICenter.NoSearch.LoginPage > #CentralSpaceLogin,
    #UICenter.NoSearch.LoginPage.slideshow-enabled > #CentralSpaceLogin {
        width: calc(100% - var(--space-32));
        padding-left: var(--space-16);
        padding-right: var(--space-16);
    }
}

/* Selection / focus states — override hardcoded RS blues in light.css */
.ResourcePanel.Selected {
    outline: 3px solid var(--cu-new-era);
}

tr[id^="ResourceShell"].Selected {
    background-color: #ffe8e5;
}

.ListViewBulkActions span:hover {
    color: var(--cu-new-era);
}

select:before {
    color: var(--cu-new-era);
}

input:focus,
textarea:focus,
select:focus,
.RecordPanel .RecordDownloadSpace .DownloadDBlend a:focus {
    box-shadow: 0 0 6px rgba(255, 67, 50, 0.45);
}

/* Message unread pill — New Era (was #e41e3f) */
span.Pill {
    background: var(--cu-new-era);
    color: var(--cu-neutral-core);
}

/* Featured Collections breadcrumbs */
.BreadcrumbsBoxTheme {
    background-color: rgba(255, 67, 50, 0.9);
    color: var(--cu-neutral-core);
}

/* Featured collection tiles — subtle New Era hover accent */
.FeaturedSimpleTile:hover {
    box-shadow: 0 1px 10px 0 rgba(255, 67, 50, 0.25);
}

.FeaturedSimpleTile.Selected,
.FeaturedSimpleTile:focus-within {
    outline: 2px solid var(--cu-new-era);
    outline-offset: 2px;
}

/* Next Generation — secondary digital accents (guidelines: buttons/CTAs/highlights) */
.SearchBarTab.SearchBarTabSelected {
    box-shadow: inset 0 -3px 0 var(--cu-next-generation);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid var(--cu-next-generation);
    outline-offset: 2px;
}

.keywordselected,
input:checked + .customFieldLabel {
    background-color: var(--cu-new-era);
    color: var(--cu-neutral-core);
    box-shadow: inset 0 0 0 2px var(--cu-next-generation);
}

.QuestionSubmit.QuestionSticky {
    background-color: var(--cu-light-foundation);
    border-top: 1px solid var(--cu-neutral-foundation);
}

/* Button hover — slight lift on New Era */
button:hover,
input[type=submit]:hover,
input[type=button]:hover,
.RecordPanel .RecordDownloadSpace .DownloadDBlend a:hover,
.UploadButton a:hover {
    filter: brightness(1.05);
}

/* Collection bar — CU gray foundations; New Era only for pulse / drop feedback */
.collection-bar-holder .collection-bar-toggle-button {
    background-color: var(--cu-solid-foundation);
    color: var(--cu-neutral-core);
}

.collection-bar-holder .collection-bar-toggle-button:hover {
    background-color: var(--cu-balanced-foundation);
}

.collection-bar-holder:not(.state-closed) .collection-bar-toggle-button {
    background: var(--cu-functional-black);
}

.collection-bar-holder:not(.state-closed) .collection-bar-toggle-button:hover {
    background: var(--cu-solid-foundation);
}

.collection-bar-actions-section,
.collection-bar-thumbs-section {
    background: var(--cu-solid-foundation);
    color: var(--cu-neutral-core);
}

.collection-bar-holder.state-thumbs button.show-thumbs-button {
    background-color: var(--cu-balanced-foundation);
}

.collection-bar-holder.state-thumbs button.show-thumbs-button:hover {
    background-color: var(--cu-neutral-foundation);
}

@keyframes pulse-bg {
    0%, 100% { background-color: var(--cu-solid-foundation); }
    50%      { background-color: var(--cu-new-era); }
}

.ui-droppable-active .collection-bar-actions-section,
.ui-droppable-active .collection-bar-thumbs-section {
    background-color: var(--cu-solid-foundation);
    outline: 2px solid var(--cu-new-era);
}

/* Hide homepage hero banner */
#hero_banner {
    display: none;
}
