/* ============================================================
   THE ERASMUS DAILY — Cool to be Local v2.1
   ============================================================ */

/* ── Variables & wrapper reset ────────────────────────────── */

.erasmus-daily-wrapper,
.erasmus-entries {
    --c-purple:  #7C3AED;
    --c-pink:    #C026D3;
    --c-orange:  #EA580C;
    --c-teal:    #0891B2;
    --c-yellow:  #D97706;
    --c-green:   #059669;
    --c-dark:    #1E1B4B;
    --c-gray:    #6B7280;
    --c-border:  #E5E7EB;
    --r:         16px;

    max-width: 900px !important;
    margin: 24px auto !important;
    background: #F3F0FF !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 48px rgba(124,58,237,0.18) !important;
    font-family: system-ui, -apple-system, 'Segoe UI', sans-serif !important;
    color: var(--c-dark) !important;
    overflow: hidden !important;
    border: none !important;
    padding: 0 !important;
}

/* ════════════════════════════════════════════════════════════
   FORM  (.erasmus-daily-wrapper)
   ════════════════════════════════════════════════════════════ */

.erasmus-daily-wrapper .ed-header {
    background: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #C026D3 100%) !important;
    padding: 26px 24px 18px !important;
    text-align: center !important;
}

.erasmus-daily-wrapper .ed-header-title {
    font-family: 'Georgia', serif !important;
    font-size: 40px !important;
    font-weight: 900 !important;
    letter-spacing: -1.5px !important;
    text-transform: uppercase !important;
    color: #fff !important;
    line-height: 1 !important;
    margin: 0 0 6px 0 !important;
    text-shadow: 0 3px 12px rgba(0,0,0,0.25) !important;
}

.erasmus-daily-wrapper .ed-header-accent {
    display: block !important;
    width: 60px !important;
    height: 4px !important;
    background: #FCD34D !important;
    margin: 0 auto 10px !important;
    border-radius: 3px !important;
}

.erasmus-daily-wrapper .ed-header-meta {
    display: flex !important;
    justify-content: space-between !important;
    font-size: 9px !important;
    letter-spacing: 0.5px !important;
    color: rgba(255,255,255,0.6) !important;
    padding-top: 8px !important;
    border-top: 1px solid rgba(255,255,255,0.15) !important;
    font-family: 'Courier New', monospace !important;
}

.erasmus-daily-wrapper .ed-form { padding: 0 20px 32px !important; }

.erasmus-daily-wrapper .ed-form-errors {
    background: #FEF2F2 !important;
    border-left: 4px solid #EF4444 !important;
    padding: 10px 14px !important;
    margin: 16px 0 0 !important;
    font-size: 13px !important;
    color: #B91C1C !important;
    border-radius: 0 8px 8px 0 !important;
}

/* Name row */
.erasmus-daily-wrapper .ed-name-row {
    background: #fff !important;
    border-radius: var(--r) !important;
    padding: 18px !important;
    margin: 16px 0 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    border: none !important;
}

.erasmus-daily-wrapper .ed-name-row label {
    display: block !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--c-purple) !important;
    margin-bottom: 8px !important;
}

.erasmus-daily-wrapper .ed-name-row input[type="text"] {
    width: 100% !important;
    border: 2px solid var(--c-border) !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    background: #F9F7FF !important;
    outline: none !important;
    box-sizing: border-box !important;
    color: var(--c-dark) !important;
    transition: border-color 0.15s !important;
    box-shadow: none !important;
}

.erasmus-daily-wrapper .ed-name-row input[type="text"]:focus {
    border-color: var(--c-purple) !important;
    background: #fff !important;
}

/* Section cards */
.erasmus-daily-wrapper .ed-section {
    background: #fff !important;
    border-radius: var(--r) !important;
    padding: 18px !important;
    margin: 12px 0 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    border: none !important;
}

.erasmus-daily-wrapper .ed-s1 { border-top: 5px solid #F59E0B !important; }
.erasmus-daily-wrapper .ed-s1 .ed-section-tag { background: linear-gradient(90deg,#D97706,#F59E0B) !important; }
.erasmus-daily-wrapper .ed-s2 { border-top: 5px solid var(--c-purple) !important; }
.erasmus-daily-wrapper .ed-s2 .ed-section-tag { background: linear-gradient(90deg,#5B21B6,var(--c-purple)) !important; }
.erasmus-daily-wrapper .ed-s5 { border-top: 5px solid var(--c-orange) !important; }
.erasmus-daily-wrapper .ed-s5 .ed-section-tag { background: linear-gradient(90deg,#C2410C,var(--c-orange)) !important; }
.erasmus-daily-wrapper .ed-s-photo { border-top: 5px solid var(--c-green) !important; }
.erasmus-daily-wrapper .ed-s-photo .ed-section-tag { background: linear-gradient(90deg,#047857,var(--c-green)) !important; }

/* Section tag pill */
.erasmus-daily-wrapper .ed-section-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: var(--c-purple) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    margin-bottom: 12px !important;
    font-family: system-ui, sans-serif !important;
    border: none !important;
}

.erasmus-daily-wrapper .ed-prompt {
    font-size: 13px !important;
    color: var(--c-gray) !important;
    font-style: italic !important;
    line-height: 1.55 !important;
    margin-bottom: 12px !important;
}

/* Headline quote */
.erasmus-daily-wrapper .ed-quote-wrap {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    background: #FFFDE7 !important;
    border: 2px dashed #FCD34D !important;
    border-radius: 12px !important;
    padding: 14px !important;
}

.erasmus-daily-wrapper .ed-qm {
    font-size: 52px !important;
    line-height: 0.8 !important;
    color: #F59E0B !important;
    opacity: 0.5 !important;
    font-family: Georgia, serif !important;
    flex-shrink: 0 !important;
    padding-top: 8px !important;
    user-select: none !important;
}

.erasmus-daily-wrapper .ed-quote-wrap textarea {
    flex: 1 !important;
    border: none !important;
    background: transparent !important;
    font-family: Georgia, serif !important;
    font-size: 15px !important;
    font-style: italic !important;
    resize: none !important;
    outline: none !important;
    color: var(--c-dark) !important;
    line-height: 1.65 !important;
    box-shadow: none !important;
}

/* Textareas */
.erasmus-daily-wrapper textarea {
    width: 100% !important;
    border: 2px solid var(--c-border) !important;
    border-radius: 10px !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    background: #F9F7FF !important;
    resize: vertical !important;
    line-height: 1.7 !important;
    box-sizing: border-box !important;
    outline: none !important;
    color: var(--c-dark) !important;
    font-family: Georgia, serif !important;
    transition: border-color 0.15s !important;
    box-shadow: none !important;
}

.erasmus-daily-wrapper textarea:focus {
    border-color: var(--c-purple) !important;
    background: #fff !important;
}

/* Inline rating */
.erasmus-daily-wrapper .ed-inline-rating {
    margin-top: 16px !important;
    padding: 14px !important;
    background: #F9F7FF !important;
    border-radius: 12px !important;
    border: 1px solid #DDD6FE !important;
}

.erasmus-daily-wrapper .ed-ir-label {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--c-purple) !important;
    margin-bottom: 10px !important;
    display: block !important;
}

/* Checkbox / radio cards */
.erasmus-daily-wrapper .ed-check-label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 7px 0 !important;
    cursor: pointer !important;
    padding: 11px 14px !important;
    border: 2px solid var(--c-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    transition: all 0.15s !important;
    font-family: system-ui, sans-serif !important;
    color: var(--c-dark) !important;
    font-weight: 500 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
}

.erasmus-daily-wrapper .ed-check-label:hover { border-color: var(--c-purple) !important; background: #F5F3FF !important; transform: translateY(-1px) !important; }
.erasmus-daily-wrapper .ed-check-label.ed-selected { border-color: var(--c-purple) !important; background: #EDE9FE !important; font-weight: 700 !important; color: #4C1D95 !important; }
.erasmus-daily-wrapper .ed-s3 .ed-check-label:hover { border-color: var(--c-pink) !important; background: #FDF4FF !important; }
.erasmus-daily-wrapper .ed-s3 .ed-check-label.ed-selected { border-color: var(--c-pink) !important; background: #FAE8FF !important; color: #701A75 !important; }
.erasmus-daily-wrapper .ed-s4 .ed-check-label:hover { border-color: var(--c-teal) !important; background: #ECFEFF !important; }
.erasmus-daily-wrapper .ed-s4 .ed-check-label.ed-selected { border-color: var(--c-teal) !important; background: #CFFAFE !important; color: #164E63 !important; }

.erasmus-daily-wrapper .ed-check-label input[type="checkbox"],
.erasmus-daily-wrapper .ed-check-label input[type="radio"] {
    margin-top: 2px !important;
    flex-shrink: 0 !important;
    accent-color: var(--c-purple) !important;
    width: 17px !important;
    height: 17px !important;
    cursor: pointer !important;
}

/* Two-column sections */
.erasmus-daily-wrapper .ed-two-col {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    margin: 12px 0 !important;
}

.erasmus-daily-wrapper .ed-col-section {
    background: #fff !important;
    border-radius: var(--r) !important;
    padding: 16px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
}

.erasmus-daily-wrapper .ed-s3 { border-top: 5px solid var(--c-pink) !important; }
.erasmus-daily-wrapper .ed-s3 .ed-section-tag { background: linear-gradient(90deg,#86198F,var(--c-pink)) !important; }
.erasmus-daily-wrapper .ed-s4 { border-top: 5px solid var(--c-teal) !important; }
.erasmus-daily-wrapper .ed-s4 .ed-section-tag { background: linear-gradient(90deg,#075985,var(--c-teal)) !important; }

/* Star rating */
.erasmus-daily-wrapper .ed-stars {
    display: flex !important;
    flex-direction: row-reverse !important;
    justify-content: flex-end !important;
    gap: 4px !important;
}

.erasmus-daily-wrapper .ed-stars input[type="radio"] { display: none !important; }

.erasmus-daily-wrapper .ed-stars label {
    font-size: 36px !important;
    color: #D1D5DB !important;
    cursor: pointer !important;
    transition: color 0.12s, transform 0.12s !important;
    line-height: 1 !important;
}

.erasmus-daily-wrapper .ed-stars label:hover,
.erasmus-daily-wrapper .ed-stars label:hover ~ label,
.erasmus-daily-wrapper .ed-stars input:checked ~ label {
    color: #FCD34D !important;
    transform: scale(1.25) !important;
}

/* Photo upload */
.erasmus-daily-wrapper .ed-file-label {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    cursor: pointer !important;
    padding: 18px 16px !important;
    border: 2px dashed #A7F3D0 !important;
    border-radius: 12px !important;
    background: #ECFDF5 !important;
    transition: all 0.15s !important;
}

.erasmus-daily-wrapper .ed-file-label:hover { border-color: var(--c-green) !important; background: #D1FAE5 !important; }

.erasmus-daily-wrapper .ed-file-input {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    clip: rect(0,0,0,0) !important;
}

.erasmus-daily-wrapper .ed-file-btn {
    display: inline-block !important;
    background: var(--c-green) !important;
    color: #fff !important;
    padding: 9px 20px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    border-radius: 20px !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.erasmus-daily-wrapper .ed-file-name { font-size: 12px !important; color: var(--c-gray) !important; font-style: italic !important; word-break: break-all !important; }

/* Submit */
.erasmus-daily-wrapper .ed-submit-row { padding-top: 24px !important; text-align: center !important; }

.erasmus-daily-wrapper .ed-submit-row button {
    background: linear-gradient(135deg, #7C3AED, #C026D3) !important;
    color: #fff !important;
    border: none !important;
    padding: 18px 60px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    box-shadow: 0 6px 24px rgba(192,38,211,0.40) !important;
    font-family: system-ui, sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}

.erasmus-daily-wrapper .ed-submit-row button:hover {
    transform: translateY(-3px) scale(1.03) !important;
    box-shadow: 0 10px 32px rgba(192,38,211,0.50) !important;
}

/* ── Weekly schedule panel ───────────────────────────────── */

.erasmus-daily-wrapper .ed-schedule-panel {
    border-bottom: 1px solid rgba(0,0,0,0.08) !important;
}

.erasmus-daily-wrapper .ed-schedule-summary {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 11px 20px !important;
    background: #F5F3FF !important;
    cursor: pointer !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-family: system-ui, sans-serif !important;
    color: #4C1D95 !important;
    letter-spacing: 0.5px !important;
    list-style: none !important;
    user-select: none !important;
}

.erasmus-daily-wrapper .ed-schedule-summary::-webkit-details-marker { display: none !important; }

.erasmus-daily-wrapper .ed-schedule-summary::after {
    content: '▸' !important;
    margin-left: auto !important;
    transition: transform 0.2s !important;
    font-style: normal !important;
}

.erasmus-daily-wrapper details[open] .ed-schedule-summary::after {
    content: '▾' !important;
}

.erasmus-daily-wrapper .ed-schedule-img-wrap {
    padding: 12px 16px 16px !important;
    background: #FAFAFA !important;
}

.erasmus-daily-wrapper .ed-schedule-img {
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    display: block !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.1) !important;
}

/* ── Reporter bar (logged in as…) ────────────────────────── */

.erasmus-daily-wrapper .ed-reporter-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 20px !important;
    background: #1E1B4B !important;
    font-size: 12px !important;
    color: rgba(255,255,255,0.65) !important;
    font-family: system-ui, sans-serif !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

.erasmus-daily-wrapper .ed-reporter-bar strong { color: #FCD34D !important; }

.erasmus-daily-wrapper .ed-logout-link {
    font-size: 11px !important;
    color: rgba(255,255,255,0.35) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
}

.erasmus-daily-wrapper .ed-logout-link:hover { color: rgba(255,255,255,0.7) !important; }

/* Access gate */
.ed-access-gate { display: flex !important; justify-content: center !important; padding: 48px 16px !important; background: #F3F0FF !important; }

.ed-access-box {
    width: 100% !important; max-width: 380px !important; background: #fff !important;
    border-radius: 20px !important; padding: 36px 28px !important; text-align: center !important;
    box-shadow: 0 8px 32px rgba(124,58,237,0.15) !important;
}

.ed-access-logo {
    font-family: Georgia, serif !important; font-size: 20px !important; font-weight: 900 !important;
    text-transform: uppercase !important;
    background: linear-gradient(135deg, #7C3AED, #C026D3) !important;
    -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important;
    background-clip: text !important; margin-bottom: 4px !important; display: block !important;
}

.ed-access-icon { font-size: 56px !important; display: block !important; margin: 8px 0 10px !important; }

.ed-access-title {
    font-family: Georgia, serif !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    color: #1E1B4B !important;
    margin: 0 0 6px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.5px !important;
    display: block !important;
}

.ed-access-sub {
    font-size: 13px !important;
    color: #6B7280 !important;
    margin-bottom: 16px !important;
    line-height: 1.5 !important;
    text-align: center !important;
    text-align-last: center !important;
}

/* Nickname chooser extras */
.ed-nickname-box .ed-access-sub { margin-bottom: 10px !important; }

.ed-nickname-examples {
    font-size: 12px !important;
    color: #6B7280 !important;
    background: #F5F3FF !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    margin-bottom: 20px !important;
    font-family: system-ui, sans-serif !important;
    text-align: left !important;
    text-align-last: left !important;
    line-height: 1.6 !important;
}

.ed-nickname-examples strong {
    display: block !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #7C3AED !important;
    margin-bottom: 6px !important;
}

.ed-nickname-examples span {
    display: inline-block !important;
    background: #fff !important;
    border: 1.5px solid #DDD6FE !important;
    border-radius: 50px !important;
    padding: 3px 10px !important;
    margin: 2px 3px !important;
    font-style: italic !important;
    color: #4C1D95 !important;
    font-size: 12px !important;
}

.ed-access-box label {
    display: block !important; font-size: 10px !important; font-weight: 800 !important;
    letter-spacing: 2px !important; text-transform: uppercase !important; text-align: left !important;
    color: #7C3AED !important; margin-bottom: 6px !important;
}

/* Both text and password inputs share the same style */
.ed-access-box input[type="text"],
.ed-access-box input[type="password"] {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 2px solid #E5E7EB !important;
    border-radius: 10px !important;
    font-size: 16px !important;
    letter-spacing: normal !important;
    text-align: left !important;
    box-sizing: border-box !important;
    margin-bottom: 14px !important;
    outline: none !important;
    color: #1E1B4B !important;
    font-family: system-ui, sans-serif !important;
    background: #F9F7FF !important;
    transition: border-color 0.15s !important;
}

.ed-access-box input[type="text"]:focus,
.ed-access-box input[type="password"]:focus { border-color: #7C3AED !important; background: #fff !important; }

.ed-access-box button {
    width: 100% !important; background: linear-gradient(135deg, #7C3AED, #C026D3) !important;
    color: #fff !important; border: none !important; padding: 14px !important;
    font-size: 14px !important; font-weight: 800 !important; border-radius: 50px !important;
    cursor: pointer !important; box-shadow: 0 4px 16px rgba(124,58,237,0.35) !important;
    font-family: system-ui, sans-serif !important; text-transform: uppercase !important;
    transition: all 0.15s !important;
}

.ed-access-box button:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(124,58,237,0.45) !important; }

.ed-error-inline {
    background: #FEF2F2 !important; color: #DC2626 !important; font-size: 13px !important;
    padding: 9px 12px !important; margin-bottom: 12px !important; border-radius: 8px !important;
    border: 1px solid #FECACA !important; text-align: left !important;
}

/* Success */
.ed-success { display: flex !important; justify-content: center !important; padding: 64px 20px !important; background: #F3F0FF !important; }
.ed-success-inner { text-align: center !important; max-width: 380px !important; }

.ed-success-logo {
    font-size: 18px !important; font-weight: 900 !important; text-transform: uppercase !important;
    background: linear-gradient(135deg, #7C3AED, #C026D3) !important;
    -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important;
    background-clip: text !important; margin-bottom: 4px !important; font-family: Georgia, serif !important; display: block !important;
}

.ed-success-icon { font-size: 68px !important; display: block !important; margin: 8px 0 16px !important; }
.ed-success-inner h2 { font-size: 22px !important; margin-bottom: 8px !important; color: #1E1B4B !important; }
.ed-success-inner p { font-size: 14px !important; color: #6B7280 !important; line-height: 1.65 !important; }

.ed-btn-again {
    display: inline-block !important; margin-top: 22px !important;
    background: linear-gradient(135deg, #7C3AED, #C026D3) !important;
    color: #fff !important; padding: 12px 30px !important; text-decoration: none !important;
    font-size: 13px !important; font-weight: 700 !important; border-radius: 50px !important;
}

/* Error / no-entries */
.ed-no-entries { text-align: center !important; padding: 48px 20px !important; color: #6B7280 !important; font-size: 15px !important; background: #F3F0FF !important; }
.ed-error-msg { background: #FEF2F2 !important; color: #DC2626 !important; padding: 12px 16px !important; border-left: 4px solid #EF4444 !important; font-size: 13px !important; border-radius: 0 8px 8px 0 !important; }

/* ── Archive: participant grid ────────────────────────────── */

.erasmus-entries .ed-archive-grid {
    display: grid !important;
    grid-template-columns: repeat( auto-fill, minmax( 240px, 1fr ) ) !important;
    gap: 20px !important;
    padding: 28px 24px !important;
}

.erasmus-entries .ed-archive-card {
    display: block !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.09) !important;
    transition: transform 0.18s, box-shadow 0.18s !important;
    border: 1.5px solid rgba(0,0,0,0.06) !important;
    background: var(--cbg, #F5F3FF) !important;
}

.erasmus-entries .ed-archive-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.14) !important;
    text-decoration: none !important;
}

.erasmus-entries .ed-archive-photo {
    position: relative !important;
    height: 160px !important;
    overflow: hidden !important;
}

.erasmus-entries .ed-archive-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.erasmus-entries .ed-archive-photo-overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to bottom, transparent 40%, rgba(10,5,30,0.55) 100%) !important;
}

.erasmus-entries .ed-archive-card-body {
    padding: 16px !important;
}

.erasmus-entries .ed-archive-badge {
    display: inline-block !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: var(--accent, #7C3AED) !important;
    background: rgba(255,255,255,0.6) !important;
    border: 1px solid var(--accent, #7C3AED) !important;
    border-radius: 50px !important;
    padding: 2px 8px !important;
    margin-bottom: 8px !important;
    font-family: system-ui, sans-serif !important;
}

.erasmus-entries .ed-archive-name {
    font-family: Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    color: #1E1B4B !important;
    margin: 0 0 6px !important;
    line-height: 1.2 !important;
}

.erasmus-entries .ed-archive-hl {
    font-family: Georgia, serif !important;
    font-size: 12px !important;
    font-style: italic !important;
    color: #4B5563 !important;
    margin: 0 0 12px !important;
    line-height: 1.5 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.erasmus-entries .ed-archive-cta {
    font-size: 11px !important;
    font-weight: 800 !important;
    color: var(--accent, #7C3AED) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-family: system-ui, sans-serif !important;
}

/* Back bar (inside individual diary) */
.erasmus-entries .ed-back-bar {
    padding: 10px 24px !important;
    border-bottom: 1px solid rgba(0,0,0,0.06) !important;
    background: #FAFAFA !important;
}

.erasmus-entries .ed-back-link {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #7C3AED !important;
    text-decoration: none !important;
    font-family: system-ui, sans-serif !important;
}

.erasmus-entries .ed-back-link:hover { text-decoration: underline !important; }

/* Day tag on individual diary cards */
.erasmus-entries .ed-mag-day-tag {
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: var(--accent, #7C3AED) !important;
    padding: 8px 16px 0 !important;
    font-family: system-ui, sans-serif !important;
    display: block !important;
}

/* ════════════════════════════════════════════════════════════
   DISPLAY / MAGAZINE  (.erasmus-entries)
   ════════════════════════════════════════════════════════════ */

/* Magazine masthead */
.erasmus-entries .ed-masthead {
    background: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #C026D3 100%) !important;
    padding: 28px 24px 20px !important;
    text-align: center !important;
}

.erasmus-entries .ed-mast-project {
    display: block !important;
    font-size: 11px !important;
    letter-spacing: 5px !important;
    text-transform: uppercase !important;
    color: #FCD34D !important;
    font-weight: 800 !important;
    font-family: system-ui, sans-serif !important;
    margin-bottom: 8px !important;
}

.erasmus-entries .ed-mast-title {
    display: block !important;
    font-family: 'Georgia', serif !important;
    font-size: 56px !important;
    font-weight: 900 !important;
    color: #fff !important;
    text-transform: uppercase !important;
    letter-spacing: -2px !important;
    line-height: 1 !important;
    margin: 0 0 10px 0 !important;
    text-shadow: 0 3px 16px rgba(0,0,0,0.3) !important;
}

.erasmus-entries .ed-mast-rule {
    display: block !important;
    width: 80px !important;
    height: 4px !important;
    background: #FCD34D !important;
    margin: 0 auto 12px !important;
    border-radius: 2px !important;
}

.erasmus-entries .ed-mast-info {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    font-size: 11px !important;
    color: rgba(255,255,255,0.65) !important;
    font-family: 'Courier New', monospace !important;
}

.erasmus-entries .ed-mast-sep { opacity: 0.4 !important; }

/* Count bar */
.erasmus-entries .ed-count-bar {
    background: #1E1B4B !important;
    color: rgba(255,255,255,0.7) !important;
    font-size: 12px !important;
    font-family: system-ui, sans-serif !important;
    padding: 10px 20px !important;
    text-align: center !important;
    letter-spacing: 0.5px !important;
}

.erasmus-entries .ed-count-num {
    font-size: 20px !important;
    font-weight: 900 !important;
    color: #FCD34D !important;
    margin-right: 4px !important;
    vertical-align: middle !important;
}

/* Magazine grid */
.erasmus-entries .ed-mag-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 3px !important;
    background: #C4B5FD !important;
    padding: 3px !important;
}

.erasmus-entries .ed-mag-entry {
    background: var(--cbg, #fff) !important;
    border-top: 5px solid var(--accent, #7C3AED) !important;
    overflow: hidden !important;
    padding: 0 !important;
}

/* Wide: spans both columns */
.erasmus-entries .ed-mag-wide { grid-column: span 2 !important; }

/* Wide card: photo left, content right */
.erasmus-entries .ed-mag-wide-inner {
    display: grid !important;
    grid-template-columns: 40% 60% !important;
    min-height: 280px !important;
}

.erasmus-entries .ed-mag-photo-col {
    overflow: hidden !important;
    background: #EDE9FE !important;
    position: relative !important;
}

.erasmus-entries .ed-mag-photo-col .ed-mag-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    min-height: 280px !important;
}

.erasmus-entries .ed-mag-no-photo {
    width: 100% !important;
    min-height: 280px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 72px !important;
    opacity: 0.2 !important;
}

/* Half card: photo top */
.erasmus-entries .ed-mag-photo-top {
    overflow: hidden !important;
    background: #EDE9FE !important;
    height: 180px !important;
}

.erasmus-entries .ed-mag-photo-top .ed-mag-img {
    width: 100% !important;
    height: 180px !important;
    object-fit: cover !important;
    display: block !important;
}

/* Content area */
.erasmus-entries .ed-mag-content { padding: 18px 20px !important; }

/* Byline */
.erasmus-entries .ed-mag-byline {
    display: block !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--accent, #7C3AED) !important;
    margin-bottom: 8px !important;
    font-family: system-ui, sans-serif !important;
    border-bottom: 1px solid var(--accent, #7C3AED) !important;
    padding-bottom: 6px !important;
}

.erasmus-entries .ed-mag-byline strong { font-size: 12px !important; color: var(--accent, #7C3AED) !important; }

.erasmus-entries .ed-mag-byline-day {
    display: block !important;
    font-weight: 400 !important;
    color: #9CA3AF !important;
    letter-spacing: 0.3px !important;
    margin-top: 2px !important;
    text-transform: none !important;
    font-size: 10px !important;
}

/* Headline */
.erasmus-entries .ed-mag-hl {
    font-family: 'Georgia', serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    font-style: italic !important;
    line-height: 1.25 !important;
    color: #1E1B4B !important;
    margin: 0 0 10px 0 !important;
}

.erasmus-entries .ed-mag-hl-big { font-size: 26px !important; line-height: 1.2 !important; }

/* Body */
.erasmus-entries .ed-mag-body {
    font-size: 13px !important;
    line-height: 1.78 !important;
    color: #374151 !important;
    font-family: 'Georgia', serif !important;
    margin: 0 0 12px 0 !important;
}

/* Inline rating */
.erasmus-entries .ed-mag-ir {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 11px !important;
    background: rgba(255,255,255,0.8) !important;
    border: 1.5px solid var(--accent, #7C3AED) !important;
    border-radius: 20px !important;
    padding: 4px 12px !important;
    margin-bottom: 12px !important;
    font-family: system-ui, sans-serif !important;
}

.erasmus-entries .ed-mag-ir-key { font-weight: 800 !important; text-transform: uppercase !important; font-size: 9px !important; letter-spacing: 1px !important; color: var(--accent, #7C3AED) !important; }

.erasmus-entries .ed-star.filled { color: #FCD34D !important; }
.erasmus-entries .ed-star.empty  { color: #D1D5DB !important; }

/* ── Pills (checkbox options, used in days 2-7) ──────────────── */

.erasmus-entries .ed-pill {
    display: flex !important; align-items: flex-start !important; gap: 6px !important;
    font-size: 12px !important; background: rgba(255,255,255,0.7) !important;
    border-left: 3px solid var(--accent, #7C3AED) !important; padding: 4px 8px !important;
    margin: 3px 0 !important; border-radius: 0 6px 6px 0 !important;
    line-height: 1.4 !important; font-family: system-ui, sans-serif !important; color: #1E1B4B !important;
}

.erasmus-entries .ed-pill::before { content: '✓' !important; color: var(--accent, #7C3AED) !important; font-weight: 900 !important; flex-shrink: 0 !important; }

/* ── Section cards (sections 3, 4, 5) ───────────────────────── */

.erasmus-entries .ed-mag-cards {
    display: flex !important;
    flex-direction: row !important;
    gap: 6px !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px dashed rgba(0,0,0,0.1) !important;
    flex-wrap: wrap !important;
}

.erasmus-entries .ed-mag-cards .ed-mag-card {
    flex: 1 1 0 !important;
    min-width: 140px !important;
}

.erasmus-entries .ed-mag-card {
    border-radius: 10px !important;
    padding: 10px 13px !important;
    overflow: hidden !important;
}

.erasmus-entries .ed-card-label {
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    margin-bottom: 5px !important;
    font-family: system-ui, sans-serif !important;
    display: block !important;
}

.erasmus-entries .ed-card-body {
    font-size: 12px !important;
    line-height: 1.65 !important;
    font-family: 'Georgia', serif !important;
    font-style: italic !important;
}

/* Society Section (pink/magenta) */
.erasmus-entries .ed-card-s3 { background: #FDF4FF !important; border-left: 4px solid #C026D3 !important; }
.erasmus-entries .ed-card-s3 .ed-card-label { color: #86198F !important; }
.erasmus-entries .ed-card-s3 .ed-card-body  { color: #701A75 !important; }

/* Tomorrow's Forecast (teal) */
.erasmus-entries .ed-card-s4 { background: #ECFEFF !important; border-left: 4px solid #0891B2 !important; }
.erasmus-entries .ed-card-s4 .ed-card-label { color: #075985 !important; }
.erasmus-entries .ed-card-s4 .ed-card-body  { color: #164E63 !important; }

/* Breaking News / section 5 (orange) */
.erasmus-entries .ed-card-s5 { background: #FFF7ED !important; border-left: 4px solid #EA580C !important; }
.erasmus-entries .ed-card-s5 .ed-card-label { color: #C2410C !important; }
.erasmus-entries .ed-card-s5 .ed-card-body  { color: #7C2D12 !important; }

/* ── Nickname optional label ──────────────────────────────── */

.erasmus-daily-wrapper .ed-name-optional {
    font-weight: 400 !important;
    font-size: 10px !important;
    opacity: 0.55 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* ── Open-text suggestions ────────────────────────────────── */

.erasmus-daily-wrapper .ed-suggestions {
    font-size: 11px !important;
    color: #9CA3AF !important;
    font-style: italic !important;
    line-height: 1.55 !important;
    margin-top: 8px !important;
    padding: 8px 10px !important;
    background: rgba(0,0,0,0.03) !important;
    border-radius: 8px !important;
    font-family: system-ui, sans-serif !important;
}

.erasmus-daily-wrapper .ed-sug-icon { margin-right: 4px !important; font-style: normal !important; }

/* ── Photo hero (text overlay on full-bleed photo) ────────── */

.erasmus-entries .ed-mag-photo-hero {
    position: relative !important;
    overflow: hidden !important;
    background: #1E1B4B !important;
}

.erasmus-entries .ed-mag-wide .ed-mag-photo-hero  { height: 340px !important; }
.erasmus-entries .ed-mag-half .ed-mag-photo-hero  { height: 220px !important; }

.erasmus-entries .ed-mag-photo-hero .ed-mag-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    opacity: 0.85 !important;
}

/* Dark gradient from bottom */
.erasmus-entries .ed-mag-photo-hero::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
        to bottom,
        transparent 10%,
        rgba(10,5,30,0.92) 100%
    ) !important;
    pointer-events: none !important;
}

/* Overlay text sits above gradient */
.erasmus-entries .ed-mag-overlay {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    padding: 20px !important;
    z-index: 1 !important;
}

.erasmus-entries .ed-mag-overlay .ed-mag-byline {
    border-bottom-color: rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.65) !important;
}

.erasmus-entries .ed-mag-overlay .ed-mag-byline strong {
    color: #FCD34D !important;
    font-size: 13px !important;
}

.erasmus-entries .ed-mag-overlay .ed-mag-byline-day {
    color: rgba(255,255,255,0.4) !important;
}

.erasmus-entries .ed-mag-overlay .ed-mag-hl,
.erasmus-entries .ed-mag-overlay .ed-mag-hl-big {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6) !important;
    margin: 6px 0 0 0 !important;
}

/* Full-content area (no photo) */
.erasmus-entries .ed-mag-content-full { background: var(--cbg, #fff) !important; }

/* ed-card-body handles both open text and pills — styles above */

/* ── Responsive ───────────────────────────────────────────── */

@media (max-width: 640px) {
    .erasmus-daily-wrapper .ed-header-title,
    .erasmus-entries .ed-mast-title { font-size: 28px !important; letter-spacing: -1px !important; }

    .erasmus-daily-wrapper .ed-header-meta { flex-direction: column !important; gap: 4px !important; }
    .erasmus-entries .ed-mast-info { flex-direction: column !important; gap: 3px !important; }
    .erasmus-daily-wrapper .ed-two-col { grid-template-columns: 1fr !important; }

    .erasmus-entries .ed-mag-grid { grid-template-columns: 1fr !important; }
    .erasmus-entries .ed-mag-wide { grid-column: span 1 !important; }
    .erasmus-entries .ed-mag-wide-inner { grid-template-columns: 1fr !important; }
    .erasmus-entries .ed-mag-photo-col .ed-mag-img { min-height: 200px !important; }

    .erasmus-daily-wrapper .ed-form { padding: 0 12px 24px !important; }
    .erasmus-daily-wrapper .ed-submit-row button { width: 100% !important; padding: 16px !important; }
}
