    /* ---- Theme tokens & fallbacks ---- */
    .uni-invite-wrap{
    --card-radius: 14px;
    --hero-a: var(--clr-6, #1266f1);   /* fallback to a primary-ish hue if not defined */
    --hero-b: var(--clr-8, #00c2ff);   /* fallback secondary accent */
    }

    /* ---- Hero ---- */
    .uni-invite-hero{
    background: linear-gradient(135deg, var(--hero-a), var(--hero-b));
    color: var(--clr-white);
    border-radius: var(--card-radius);
    padding: clamp(14px, 1.5vw, 18px);
    box-shadow: var(--soft-shadow);
    position: relative;
    overflow: hidden;
    }
    .uni-invite-hero h1{
    margin: 0 0 6px;
    font-weight: 800;
    font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
    letter-spacing: .2px;
    }
    .uni-invite-hero p{ margin: 0; opacity: .95; }

    /* Subtle decorative flare */
    .uni-invite-hero::after{
    content:"";
    position:absolute; inset:auto -20% -40% -20%;
    height:140%; border-radius:50%;
    background: radial-gradient(ellipse at center, rgba(255,255,255,.18), transparent 60%);
    filter: blur(30px);
    pointer-events:none;
    }

    /* ---- Body ---- */
    .uni-invite-body{
    background: var(--clr-white);
    border: 1px solid var(--clr-input-border);
    border-radius: var(--card-radius);
    padding: clamp(14px, 1.2vw, 16px);
    }

    .uni-invite-info-body{
    border-radius: var(--card-radius);
    padding: 10px;
    border: 1px solid var(--clr-input-border);
    }

    /* ---- Text & helpers ---- */
    .uni-invite-info{ color: var(--clr-black); font-size: .95rem; }
    .mini-checklist{
    margin: 0; padding-left: 1.2rem; color: var(--clr-black);
    }
    .mini-checklist li{ margin: .25rem 0; }
    .helper-badge{
    display: inline-block;
    background: #f7f9fa;
    border: 1px solid #e6eaef;
    color: var(--clr-6);
    border-radius: 999px;
    padding: 4px 10px;
    font-size: .8rem; font-weight: 700;
    }
    @media (prefers-color-scheme: dark){
    .helper-badge{ 
        background:var(--clr-black);
        color: var(--clr-white)
    }
    }

    /* ---- Form polish ---- */
    .uni-invite-form .form-label{ font-weight: 700;  }
    .uni-invite-form .form-control,
    .uni-invite-form .form-select{
    border-radius: .8rem;
    }
    .uni-invite-form .is-valid.form-control,
    .uni-invite-form .is-valid.form-select{ border-color: var(--bs-success) !important; }
    .uni-invite-form .is-invalid.form-control,
    .uni-invite-form .is-invalid.form-select{ border-color: var(--bs-danger) !important; }

    .uni-invite-form .form-text{
    color: var(--clr-6);
    }

    .uni-invite-actions{
    display:flex; justify-content:flex-end; gap:10px; align-items:center;
    }

    /* ---- Layout ---- */
    .uni-invite-grid{
    display:grid; grid-template-columns: 1.15fr 1fr; gap: clamp(14px, 1.2vw, 16px);
    }
    @media (max-width: 991.98px){ .uni-invite-grid{ grid-template-columns: 1.9fr; } }

    /* ---- Dividers ---- */
    .hr-soft{
    border:0; height:1px; background: var(--clr-input-border);
    margin: .75rem 0 1rem;
    }

    /* ---- Motion safety ---- */
    @media (prefers-reduced-motion: reduce){
    *{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
    }
