/* Shivaji University Course Catalogue */
body#page-local-shivajiuniv-catalogue .su-page__utility,
body#page-local-shivajiuniv-catalogue .su-side-region,
body#page-local-shivajiuniv-catalogue [data-region="blocks-column"]{display:none!important}
body#page-local-shivajiuniv-catalogue .su-content-grid{display:block!important;max-width:none!important;padding:0!important}
body#page-local-shivajiuniv-catalogue .su-main{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
body#page-local-shivajiuniv-catalogue #region-main{padding:0!important}
body#page-local-shivajiuniv-catalogue .su-page{background:#fbf7ef!important}
body#page-local-shivajiuniv-catalogue .sucatalogue-app{margin-top:0}

.sucatalogue-app{--navy:#071f49;--deep:#061a3d;--orange:#c84b16;--gold:#b38a2d;--cream:#fbf7ef;--line:#ded5c5;color:#142038;background:var(--cream)}
.sucatalogue-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.sucatalogue-hero{position:relative;overflow:hidden;background:var(--cream);border-bottom:1px solid var(--line)}
.sucatalogue-hero:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(179,138,45,.2);border-radius:50%;right:-170px;top:-105px}
.sucatalogue-hero__grid{padding-top:58px;padding-bottom:48px}
.sucatalogue-hero__copy{max-width:700px;position:relative;z-index:1}
.sucatalogue-eyebrow,.sucatalogue-heading span{color:var(--orange);font-size:9px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.sucatalogue-hero h1{max-width:720px;margin:15px 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:52px;line-height:1.02;font-weight:400;color:var(--deep)}
.sucatalogue-hero h1 em{color:var(--orange);font-weight:400}
.sucatalogue-hero p{max-width:625px;margin:0;color:#535d6b;font-size:13px;line-height:1.65}
.sucatalogue-search{display:flex;align-items:stretch;max-width:640px;margin-top:27px;background:#fff;border:1px solid var(--line)}
.sucatalogue-search>span{display:grid;place-items:center;width:42px;color:#586373}
.sucatalogue-search input{flex:1;min-width:0;border:0;padding:13px 8px;font-size:12px;outline:0}
.sucatalogue-search button{width:105px;border:0;background:var(--navy);color:#fff;font-size:9px;font-weight:700;letter-spacing:.13em}
.sucatalogue-try{margin-top:8px;color:#697281;font-size:9px}

.sucatalogue-facultynav{background:#fff;border-bottom:1px solid var(--line)}
.sucatalogue-facultynav .sucatalogue-shell{min-height:62px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sucatalogue-filterlabel{margin-right:6px;color:#68717e;font-size:8px;letter-spacing:.16em}
.sucatalogue-pill{padding:7px 12px;border:1px solid #d6cdbc;border-radius:16px;color:var(--navy);font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none!important;background:#fff}
.sucatalogue-pill b{margin-left:4px;color:#777;font-weight:500}
.sucatalogue-pill.is-active{background:var(--navy);border-color:var(--navy);color:#fff}

.sucatalogue-main{padding:35px 0 68px}
.sucatalogue-main__grid{display:grid;grid-template-columns:205px minmax(0,1fr);gap:28px;align-items:start}
.sucatalogue-filters{background:#fff;border:1px solid var(--line)}
.sucatalogue-filtertitle{display:flex;justify-content:space-between;align-items:center;padding:18px 16px;border-bottom:1px solid var(--line);font-family:Georgia,serif}
.sucatalogue-filtertitle a{color:var(--orange);font-family:Arial,sans-serif;font-size:8px;letter-spacing:.08em}
.sucatalogue-filtergroup{padding:15px 16px;border-bottom:1px solid #ebe4d8}
.sucatalogue-filtergroup:last-child{border-bottom:0}
.sucatalogue-filtergroup h3{margin:0 0 10px;color:var(--orange);font-size:8px;font-weight:700;letter-spacing:.15em}
.sucatalogue-filtergroup label{display:flex;align-items:center;gap:7px;margin:7px 0;color:#596371;font-size:10px;font-weight:400}
.sucatalogue-filtergroup label span{margin-left:auto;color:#8a929d}
.sucatalogue-filtergroup input[type=checkbox]{accent-color:var(--navy)}
.sucatalogue-range{width:100%;accent-color:var(--navy)}
.sucatalogue-rangelegend{display:flex;justify-content:space-between;color:#838b96;font-size:8px}

.sucatalogue-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}
.sucatalogue-heading--spaced{margin-top:37px}
.sucatalogue-heading--border{padding-bottom:12px;border-bottom:1px solid var(--line)}
.sucatalogue-heading h2{margin:5px 0 0;color:var(--deep);font-family:Georgia,serif;font-size:25px;font-weight:400}
.sucatalogue-heading>a{color:var(--navy);font-size:8px;font-weight:700;letter-spacing:.1em;text-decoration:none}
.sucatalogue-resultmeta{color:#6f7782;font-size:8px;letter-spacing:.09em}

.sucatalogue-featuredlist{display:grid;gap:13px}
.sucatalogue-featuredcard{display:grid;grid-template-columns:185px minmax(0,1fr);min-height:173px;background:#fff;border:1px solid var(--line)}
.sucatalogue-featuredcard__cover,.sucatalogue-smallcard__cover{position:relative;overflow:hidden;background:var(--navy);color:#e7d5a7;text-decoration:none!important}
.sucatalogue-featuredcard__cover:after,.sucatalogue-smallcard__cover:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 13px,rgba(255,255,255,.04) 14px,rgba(255,255,255,.04) 15px)}
.sucatalogue-featuredcard__cover small,.sucatalogue-smallcard__cover small{position:absolute;z-index:1;left:12px;top:11px;padding:4px 7px;background:rgba(255,255,255,.13);color:#fff;font-size:8px;letter-spacing:.07em}
.sucatalogue-featuredcard__cover strong{position:absolute;z-index:1;right:30px;top:38px;font-family:Georgia,serif;font-size:82px;font-weight:400;color:#dfc87e}
.sucatalogue-featuredcard:nth-child(2) .sucatalogue-featuredcard__cover{background:#d94b11}
.sucatalogue-featuredcard:nth-child(3) .sucatalogue-featuredcard__cover{background:#0a2b5b}
.sucatalogue-featuredcard__body{padding:22px 25px}
.sucatalogue-featuredcard__body>span,.sucatalogue-smallcard__body>span{color:var(--orange);font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.sucatalogue-featuredcard h3,.sucatalogue-smallcard h3{margin:7px 0;font-family:Georgia,serif;font-weight:400;color:var(--deep)}
.sucatalogue-featuredcard h3{font-size:20px}
.sucatalogue-featuredcard h3 a,.sucatalogue-smallcard h3 a{color:var(--deep);text-decoration:none}
.sucatalogue-featuredcard p{margin:0;color:#586271;font-size:11px;line-height:1.55}
.sucatalogue-meta{margin-top:13px;padding-top:9px;border-top:1px solid #eee7db;color:#79818b;font-size:8px}

.sucatalogue-newgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.sucatalogue-coursegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sucatalogue-smallcard{background:#fff;border:1px solid var(--line)}
.sucatalogue-smallcard__cover{display:block;height:125px}
.sucatalogue-smallcard__cover strong{position:absolute;z-index:1;right:18px;bottom:-14px;font-family:Georgia,serif;font-size:82px;font-weight:400;color:rgba(230,207,136,.42)}
.sucatalogue-smallcard:nth-child(3n+2) .sucatalogue-smallcard__cover{background:#b68a2b}
.sucatalogue-smallcard:nth-child(3n+3) .sucatalogue-smallcard__cover{background:#d94b11}
.sucatalogue-smallcard__body{min-height:144px;padding:15px}
.sucatalogue-smallcard h3{font-size:16px;line-height:1.2}
.sucatalogue-smallcard p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0;color:#68717d;font-size:9px;line-height:1.45}

.sucatalogue-sortrow{display:flex;justify-content:flex-end;margin:-2px 0 14px}
.sucatalogue-sortrow select{padding:8px 30px 8px 10px;border:1px solid #d8cfbf;background:#fff;color:var(--navy);font-size:8px;font-weight:700;letter-spacing:.06em}
.sucatalogue-empty{padding:45px;background:#fff;border:1px solid var(--line);text-align:center;color:#68717d}
.sucatalogue-pagination{display:flex;justify-content:center;gap:5px;margin-top:27px}
.sucatalogue-pagination a{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7cebf;background:#fff;color:var(--navy);font-size:9px;text-decoration:none}
.sucatalogue-pagination a.is-active{background:var(--navy);border-color:var(--navy);color:#fff}

@media(max-width:900px){.sucatalogue-main__grid{grid-template-columns:1fr}.sucatalogue-filters{display:none}.sucatalogue-newgrid,.sucatalogue-coursegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.sucatalogue-shell{width:min(100% - 28px,1180px)}.sucatalogue-hero h1{font-size:39px}.sucatalogue-search{display:grid;grid-template-columns:38px 1fr}.sucatalogue-search button{grid-column:1/-1;width:100%;padding:12px}.sucatalogue-featuredcard{grid-template-columns:1fr}.sucatalogue-featuredcard__cover{height:130px}.sucatalogue-newgrid,.sucatalogue-coursegrid{grid-template-columns:1fr}}


/* =====================================================================
   COURSE CATALOGUE v0.5.2
   - Remove inherited Moodle/theme whitespace above the catalogue app.
   - Increase catalogue typography to match the supplied prototype scale.
   These rules are deliberately scoped to this one local-plugin page.
   ===================================================================== */

/* Remove the standard page/title/content spacing which sits between the
   shared university header and the custom catalogue hero. */
body#page-local-shivajiuniv-catalogue #page,
body#page-local-shivajiuniv-catalogue #page-content,
body#page-local-shivajiuniv-catalogue #region-main-box,
body#page-local-shivajiuniv-catalogue #region-main,
body#page-local-shivajiuniv-catalogue .su-page,
body#page-local-shivajiuniv-catalogue .su-content-grid,
body#page-local-shivajiuniv-catalogue .su-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body#page-local-shivajiuniv-catalogue #page-header,
body#page-local-shivajiuniv-catalogue .page-header-headings,
body#page-local-shivajiuniv-catalogue .breadcrumb,
body#page-local-shivajiuniv-catalogue .secondary-navigation,
body#page-local-shivajiuniv-catalogue .activity-header,
body#page-local-shivajiuniv-catalogue .su-page__utility {
    display: none !important;
}

body#page-local-shivajiuniv-catalogue .su-content-grid {
    min-height: 0 !important;
    padding-bottom: 0 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-app,
body#page-local-shivajiuniv-catalogue .sucatalogue-hero {
    margin-top: 0 !important;
}

/* Prototype-scale typography. */
body#page-local-shivajiuniv-catalogue .sucatalogue-eyebrow,
body#page-local-shivajiuniv-catalogue .sucatalogue-heading span {
    font-size: 11px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-hero h1 {
    font-size: 60px !important;
    line-height: 1.01 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-hero p {
    font-size: 15px !important;
    line-height: 1.65 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-search input {
    font-size: 14px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-search button {
    font-size: 10px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-try {
    font-size: 10px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filterlabel {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-pill {
    font-size: 9px !important;
    padding: 8px 13px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filtertitle {
    font-size: 17px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filtertitle a {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filtergroup h3 {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filtergroup label {
    font-size: 12px !important;
    line-height: 1.35 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-rangelegend {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-heading h2 {
    font-size: 30px !important;
    line-height: 1.08 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-heading > a,
body#page-local-shivajiuniv-catalogue .sucatalogue-resultmeta {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-featuredcard__body > span,
body#page-local-shivajiuniv-catalogue .sucatalogue-smallcard__body > span {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-featuredcard h3 {
    font-size: 24px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-featuredcard p {
    font-size: 13px !important;
    line-height: 1.58 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-meta {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-smallcard h3 {
    font-size: 19px !important;
    line-height: 1.22 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-smallcard p {
    font-size: 11px !important;
    line-height: 1.5 !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-sortrow select {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-pagination a {
    font-size: 10px !important;
}

/* Slightly enlarge the catalogue content density so the card proportions
   better match the reference design. */
body#page-local-shivajiuniv-catalogue .sucatalogue-main__grid {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 30px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-featuredcard {
    grid-template-columns: 200px minmax(0, 1fr) !important;
    min-height: 190px !important;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-smallcard__body {
    min-height: 160px !important;
}

@media (max-width: 900px) {
    body#page-local-shivajiuniv-catalogue .sucatalogue-main__grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 620px) {
    body#page-local-shivajiuniv-catalogue .sucatalogue-hero h1 {
        font-size: 43px !important;
    }

    body#page-local-shivajiuniv-catalogue .sucatalogue-featuredcard {
        grid-template-columns: 1fr !important;
    }
}


/* =====================================================================
   SHARED LOCAL APP SHELL — Catalogue + Resources
   ===================================================================== */
body#page-local-shivajiuniv-resources .su-page__utility,
body#page-local-shivajiuniv-resources .su-side-region,
body#page-local-shivajiuniv-resources [data-region="blocks-column"],
body#page-local-shivajiuniv-resources #page-header,
body#page-local-shivajiuniv-resources .page-header-headings,
body#page-local-shivajiuniv-resources .breadcrumb,
body#page-local-shivajiuniv-resources .secondary-navigation{display:none!important}
body#page-local-shivajiuniv-resources #page,
body#page-local-shivajiuniv-resources #page-content,
body#page-local-shivajiuniv-resources #region-main-box,
body#page-local-shivajiuniv-resources #region-main,
body#page-local-shivajiuniv-resources .su-page,
body#page-local-shivajiuniv-resources .su-content-grid,
body#page-local-shivajiuniv-resources .su-main{margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
body#page-local-shivajiuniv-resources .su-content-grid{display:block!important;min-height:0!important}
body#page-local-shivajiuniv-resources .su-page{background:#fff!important}
.suapp-eyebrow{color:#c84b16;font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.suapp-section{padding:58px 0;background:#fff}.suapp-section.is-warm{background:#fbf7ef}
.suapp-sectionhead{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:27px}.suapp-sectionhead>div{max-width:720px}.suapp-sectionhead h2{margin:6px 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:32px;line-height:1.08;font-weight:400;color:#061a3d}.suapp-sectionhead p{margin:0;color:#626b77;font-size:13px;line-height:1.55}.suapp-sectionhead>a{color:#071f49;font-size:9px;font-weight:700;letter-spacing:.1em;text-decoration:none;white-space:nowrap}

/* Resources page */
.suresources-app{color:#142038;background:#fff}.suresources-context{background:#fff;border-bottom:1px solid #ded5c5}.suresources-context__inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}.suresources-context__title{font-family:Georgia,serif;font-size:17px;color:#061a3d}.suresources-context__meta{margin-top:3px;color:#777f89;font-size:10px}.suresources-context__tabs{display:flex;gap:26px}.suresources-context__tabs a{padding:29px 0 25px;color:#53606f;font-size:10px;text-decoration:none;border-bottom:2px solid transparent}.suresources-context__tabs a.is-active{color:#071f49;border-color:#c84b16}
.suresources-hero{background:#fbf7ef;border-bottom:1px solid #ded5c5}.suresources-hero__grid{display:grid;grid-template-columns:1.45fr .8fr;gap:70px;padding-top:55px;padding-bottom:52px}.suresources-hero h1{margin:14px 0 13px;font-family:Georgia,serif;font-size:54px;line-height:1.02;font-weight:400;color:#061a3d}.suresources-hero h1 em{color:#c84b16;font-weight:400}.suresources-hero p{max-width:675px;color:#56616f;font-size:14px;line-height:1.65}.suresources-stats{align-self:center;display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid #ded5c5}.suresources-stats>div{padding:18px 20px;border-right:1px solid #ded5c5;border-bottom:1px solid #ded5c5}.suresources-stats>div:nth-child(2n){border-right:0}.suresources-stats dt{color:#7b8490;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.suresources-stats dd{margin:6px 0 0;color:#071f49;font-family:Georgia,serif;font-size:28px}.suresources-stats dd em{margin-left:4px;color:#69727e;font-family:Arial,sans-serif;font-size:10px;font-style:normal}
.suresources-filters{background:#fff;border-bottom:1px solid #ded5c5}.suresources-filters>.sucatalogue-shell{min-height:59px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.suresources-filters button{padding:8px 12px;border:1px solid #d6cdbc;border-radius:17px;background:#fff;color:#071f49;font-size:9px;font-weight:700}.suresources-filters button.is-active{background:#071f49;color:#fff;border-color:#071f49}.suresources-filters button span{margin-left:5px;opacity:.65}
.suresources-requiredgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.suresources-required{position:relative;border:1px solid #ded5c5;background:#fff}.suresources-required__badge{position:absolute;z-index:2;left:10px;top:10px;padding:5px 8px;background:#c84b16;color:#fff;font-size:8px;font-weight:700;letter-spacing:.06em}.suresources-cover{height:130px;display:flex;align-items:center;justify-content:flex-end;padding-right:24px;font-family:Georgia,serif;font-size:82px;color:#e7d5a7;background:#071f49}.suresources-cover.is-orange{background:#d94b11}.suresources-cover.is-deep{background:#061a3d}.suresources-required__body{padding:18px}.suresources-required__body small,.suresources-mediagrid small{color:#c84b16;font-size:9px;font-weight:700;letter-spacing:.12em}.suresources-required__body h3{margin:8px 0 3px;font-family:Georgia,serif;font-size:23px;font-weight:400;color:#061a3d}.suresources-required__body h4{margin:0 0 11px;color:#586270;font-size:12px;font-weight:400}.suresources-required__body b{font-size:11px}.suresources-required__body p{color:#66707c;font-size:11px;line-height:1.5}.suresources-required__body>div{display:flex;gap:7px;margin-top:14px}.suresources-required__body a{padding:8px 10px;background:#071f49;color:#fff;font-size:8px;font-weight:700;text-decoration:none}.suresources-required__body a+ a{background:#fff;color:#071f49;border:1px solid #d6cdbc}
.suresources-primarygrid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ded5c5;border-left:1px solid #ded5c5}.suresources-primarygrid article{padding:25px;border-right:1px solid #ded5c5;border-bottom:1px solid #ded5c5;background:#fff;border-left:3px solid #c84b16}.suresources-primarygrid .meta{display:flex;justify-content:space-between;color:#c84b16;font-size:8px;letter-spacing:.1em}.suresources-primarygrid h3{margin:12px 0 2px;font-family:Georgia,serif;font-size:24px;font-weight:400;color:#061a3d}.suresources-primarygrid h4{margin:0 0 11px;font-size:12px;color:#5d6672;font-weight:400}.suresources-primarygrid p{font-size:11px;color:#626c78;line-height:1.5}.suresources-primarygrid dl{margin:15px 0}.suresources-primarygrid dl>div{display:grid;grid-template-columns:95px 1fr;padding:5px 0;border-top:1px solid #eee7dc}.suresources-primarygrid dt{font-size:8px;color:#858c96;text-transform:uppercase}.suresources-primarygrid dd{margin:0;font-size:10px}.suresources-primarygrid footer,.suresources-biblio footer{display:flex;gap:14px}.suresources-primarygrid footer a,.suresources-biblio footer a{font-size:9px;color:#071f49;text-decoration:underline}
.suresources-biblio{margin:0;padding:0;list-style:none;border-top:1px solid #ded5c5}.suresources-biblio li{display:grid;grid-template-columns:45px 1fr;gap:18px;padding:18px 4px;border-bottom:1px solid #ded5c5}.suresources-biblio li>b{color:#c84b16;font-family:Georgia,serif;font-size:17px}.suresources-biblio small{color:#808793;font-size:8px;letter-spacing:.09em}.suresources-biblio small.required{color:#c84b16}.suresources-biblio p{margin:7px 0;font-family:Georgia,serif;font-size:15px;color:#17243a}.suresources-biblio span{display:block;margin-bottom:8px;color:#68717e;font-size:10px;line-height:1.45}
.suresources-mediagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.suresources-mediagrid article{border:1px solid #ded5c5;background:#fff}.suresources-mediagrid article>div:last-child{padding:14px}.suresources-mediagrid .thumb{position:relative;height:105px;display:grid;place-items:center;background:#c84b16;color:#fff}.suresources-mediagrid .thumb.is-navy{background:#071f49}.suresources-mediagrid .thumb.is-deep{background:#061a3d}.suresources-mediagrid .thumb.is-gold{background:#b68a2b}.suresources-mediagrid .thumb>span{position:absolute;left:15px;bottom:3px;font-family:Georgia,serif;font-size:66px;opacity:.25}.suresources-mediagrid .thumb i{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#071f49;font-style:normal}.suresources-mediagrid .thumb b{position:absolute;right:8px;bottom:8px;padding:3px 5px;background:rgba(0,0,0,.45);font-size:8px}.suresources-mediagrid h3{margin:7px 0 4px;font-family:Georgia,serif;font-size:17px;font-weight:400;color:#061a3d}.suresources-mediagrid p{margin:0;color:#69717c;font-size:10px}
.suresources-mapsgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.suresources-mapsgrid article{border:1px solid #ded5c5;background:#fff;padding-bottom:14px}.suresources-mapsgrid .map{position:relative;height:130px;background:radial-gradient(circle at 50% 50%,rgba(200,75,22,.05),transparent 40%),#f6f0e5;overflow:hidden}.suresources-mapsgrid .map i{position:absolute;width:7px;height:7px;border-radius:50%;background:#c84b16}.suresources-mapsgrid .map span{position:absolute;left:12px;bottom:9px;font-size:8px;color:#7a8088}.suresources-mapsgrid h3{margin:13px 15px 5px;font-family:Georgia,serif;font-size:19px;font-weight:400;color:#061a3d}.suresources-mapsgrid p{margin:0 15px 11px;color:#66707b;font-size:10px}.suresources-mapsgrid footer{display:flex;justify-content:space-between;padding:10px 15px 0;border-top:1px solid #eee7dc;color:#858c95;font-size:8px}.suresources-mapsgrid footer a{color:#071f49;font-weight:700}
.suresources-externallist{list-style:none;margin:0;padding:0;border-top:1px solid #ded5c5}.suresources-externallist li{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:15px;align-items:center;padding:16px 4px;border-bottom:1px solid #ded5c5}.suresources-externallist li>i{width:30px;height:30px;display:grid;place-items:center;border:1px solid #d7cebf;border-radius:50%;color:#071f49;font-style:normal}.suresources-externallist h3{margin:0 0 3px;font-family:Georgia,serif;font-size:15px;font-weight:400;color:#061a3d}.suresources-externallist p{margin:0;color:#68717e;font-size:10px;line-height:1.4}.suresources-externallist>a{color:#071f49;font-size:9px;font-weight:700;white-space:nowrap}
@media(max-width:900px){.suresources-context__inner{align-items:flex-start;flex-direction:column;padding-top:16px}.suresources-context__tabs{overflow:auto;width:100%}.suresources-hero__grid{grid-template-columns:1fr}.suresources-requiredgrid,.suresources-mediagrid{grid-template-columns:1fr 1fr}.suresources-primarygrid{grid-template-columns:1fr}}
@media(max-width:620px){.suresources-hero h1{font-size:42px}.suresources-requiredgrid,.suresources-mediagrid,.suresources-mapsgrid{grid-template-columns:1fr}.suresources-primarygrid{display:block;border-left:0}.suresources-externallist li{grid-template-columns:36px 1fr}.suresources-externallist>a{grid-column:2}.suapp-sectionhead{align-items:flex-start;flex-direction:column}}

/* =====================================================================
   RESOURCES v0.6.1 — Maps & timelines artwork.
   Match the prototype's cream, dotted geographic texture and route lines.
   ===================================================================== */
body#page-local-shivajiuniv-resources .suresources-mapsgrid .map {
    height: 145px;
    background-color: #f4efe5 !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important;
}
body#page-local-shivajiuniv-resources .suresources-mapsgrid article:nth-child(1) .map { background-image: url("pix/map-bg-1.svg") !important; }
body#page-local-shivajiuniv-resources .suresources-mapsgrid article:nth-child(2) .map { background-image: url("pix/map-bg-2.svg") !important; }
body#page-local-shivajiuniv-resources .suresources-mapsgrid article:nth-child(3) .map { background-image: url("pix/map-bg-3.svg") !important; }
body#page-local-shivajiuniv-resources .suresources-mapsgrid article:nth-child(4) .map { background-image: url("pix/map-bg-4.svg") !important; }

/* The SVG already contains the coloured map markers. Hide the old CSS dots
   to avoid duplicate points appearing over the artwork. */
body#page-local-shivajiuniv-resources .suresources-mapsgrid .map > i {
    display: none !important;
}

body#page-local-shivajiuniv-resources .suresources-mapsgrid .map > span {
    left: 14px;
    bottom: 10px;
    padding: 3px 6px;
    background: rgba(255,255,255,.74);
    color: #6c727c;
    font-size: 9px;
    letter-spacing: .02em;
}


/* =====================================================================
   CALENDAR APPLICATION v0.7
   Uses the same .sucatalogue-shell container and typography scale as the
   Catalogue and Resources pages.
   ===================================================================== */
body#page-local-shivajiuniv-calendar .su-page__utility,
body#page-local-shivajiuniv-calendar .su-side-region,
body#page-local-shivajiuniv-calendar [data-region="blocks-column"],
body#page-local-shivajiuniv-calendar #page-header,
body#page-local-shivajiuniv-calendar .page-header-headings,
body#page-local-shivajiuniv-calendar .breadcrumb,
body#page-local-shivajiuniv-calendar .secondary-navigation{display:none!important}
body#page-local-shivajiuniv-calendar .su-content-grid{display:block!important;max-width:none!important;padding:0!important;margin:0!important}
body#page-local-shivajiuniv-calendar .su-main,
body#page-local-shivajiuniv-calendar #region-main{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
body#page-local-shivajiuniv-calendar .su-page{background:#fbf7ef!important}

.sucalendar-app{--navy:#071f49;--deep:#061a3d;--orange:#cf4d16;--gold:#b58a2f;--cream:#fbf7ef;--line:#ded5c5;--muted:#66717e;color:#152039;background:var(--cream)}
.sucalendar-hero{position:relative;overflow:hidden;background:#fff;border-bottom:1px solid var(--line)}
.sucalendar-hero:after{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(181,138,47,.18);border-radius:50%;right:-160px;top:55px}
.sucalendar-hero__grid{display:grid;grid-template-columns:1.45fr .8fr;gap:72px;padding-top:62px;padding-bottom:60px}
.sucalendar-hero__copy{align-self:center;position:relative;z-index:1}
.sucalendar-hero h1{margin:14px 0 14px;color:var(--deep);font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:1;font-weight:400}
.sucalendar-hero h1 em{color:var(--orange);font-weight:400}
.sucalendar-hero p{max-width:660px;margin:0;color:#596371;font-size:15px;line-height:1.65}
.sucalendar-stats{align-self:center;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;z-index:1}
.sucalendar-stats>div{min-height:95px;padding:18px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.sucalendar-stats>div:nth-child(2n){border-right:0}.sucalendar-stats>div:nth-last-child(-n+2){border-bottom:0}
.sucalendar-stats span{display:block;margin-bottom:6px;color:#7c8591;font-size:9px;font-weight:700;letter-spacing:.17em}.sucalendar-stats strong{color:var(--navy);font-family:Georgia,serif;font-size:31px;font-weight:400}.sucalendar-stats small{margin-left:4px;color:#65707c;font-size:10px}

.sucalendar-toolbar{background:#fff;border-bottom:1px solid var(--line)}
.sucalendar-toolbar__inner{min-height:62px;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}
.sucalendar-viewtabs,.sucalendar-actions,.sucalendar-range{display:flex;align-items:center;gap:8px}.sucalendar-actions{justify-content:flex-end}.sucalendar-range{justify-content:center}
.sucalendar-viewtabs a,.sucalendar-viewtabs button,.sucalendar-actions a,.sucalendar-range>a,.sucalendar-range>button{padding:9px 13px;border:1px solid #d5ccbd;border-radius:3px;background:#fff;color:var(--navy);font-size:9px;font-weight:700;letter-spacing:.08em;text-decoration:none;white-space:nowrap}
.sucalendar-viewtabs button.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.sucalendar-range strong{min-width:190px;text-align:center;color:var(--deep);font-family:Georgia,serif;font-size:17px;font-weight:400}.sucalendar-range>button{width:34px;height:34px;padding:0;border-radius:50%;font-family:Georgia,serif;font-size:20px;font-weight:400}

.sucalendar-body{padding:36px 0 72px;background:var(--cream)}
.sucalendar-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:28px;align-items:start}
.sucalendar-sidebar{display:grid;gap:18px}.sucalendar-mini,.sucalendar-deadlines,.sucalendar-legend{background:#fff;border:1px solid var(--line)}
.sucalendar-mini{padding:18px}.sucalendar-mini header{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.sucalendar-mini h2,.sucalendar-deadlines h2{margin:0;color:var(--deep);font-family:Georgia,serif;font-size:19px;font-weight:400}.sucalendar-mini header span{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:15px}
.sucalendar-mini__weekdays,.sucalendar-mini__days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.sucalendar-mini__weekdays{margin-top:17px}.sucalendar-mini__weekdays b{padding:6px 0;color:#7b8490;font-size:8px;font-weight:700}.sucalendar-mini__days span{display:grid;place-items:center;height:29px;color:#1b2a44;font-size:10px}.sucalendar-mini__days span.soft{background:#f8efe7;border-radius:50%}.sucalendar-mini__days span.today{width:28px;height:28px;margin:auto;border-radius:50%;background:var(--orange);color:#fff}

.sucalendar-deadlines header{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.sucalendar-deadlines header span{color:#87909a;font-size:8px;letter-spacing:.12em}.sucalendar-deadlines article{display:grid;grid-template-columns:48px 1fr;gap:8px;padding:14px 16px;border-bottom:1px solid #ece5da}.sucalendar-deadlines article:last-child{border-bottom:0}.sucalendar-deadlines time{text-align:center;color:var(--navy);font-size:8px;letter-spacing:.08em}.sucalendar-deadlines time b{display:block;color:var(--navy);font-family:Georgia,serif;font-size:20px;font-weight:400}.sucalendar-deadlines small{color:var(--orange);font-size:8px;font-weight:700;letter-spacing:.12em}.sucalendar-deadlines h3{margin:5px 0 3px;color:#17223a;font-size:11px;line-height:1.28}.sucalendar-deadlines p{margin:0;color:#6f7782;font-size:9px;line-height:1.35}
.sucalendar-legend{padding:17px}.sucalendar-legend h2{margin:0 0 12px;color:#7b8490;font-size:8px;letter-spacing:.14em}.sucalendar-legend p{display:flex;align-items:center;gap:9px;margin:9px 0;color:#485361;font-size:10px}.sucalendar-legend i{width:4px;height:14px;border-radius:2px}.sucalendar-legend i.navy{background:var(--navy)}.sucalendar-legend i.gold{background:var(--gold)}.sucalendar-legend i.orange{background:var(--orange)}.sucalendar-legend i.red{background:#df6c59}

.sucalendar-week{min-width:0}.sucalendar-grid{position:relative;display:grid;grid-template-columns:52px repeat(5,minmax(0,1fr));grid-template-rows:72px repeat(11,52px);background:#fff;border:1px solid var(--line);overflow:hidden}.sucalendar-grid__corner{grid-column:1;grid-row:1;background:#fff}.sucalendar-grid>header{display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.sucalendar-grid>header small{color:#808995;font-size:8px;letter-spacing:.13em}.sucalendar-grid>header strong{margin-top:5px;color:var(--navy);font-family:Georgia,serif;font-size:18px;font-weight:400}.sucalendar-grid>header.is-today{border-top:2px solid var(--orange)}.sucalendar-grid>header.is-today small{color:var(--orange)}.sucalendar-grid>header.is-today strong{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--orange);color:#fff}
.sucalendar-hours{grid-column:1;grid-row:2/13;display:grid;grid-template-rows:repeat(11,52px);background:#fff}.sucalendar-hours span{padding-top:4px;border-top:1px solid #eee8de;color:#7f8791;text-align:center;font-size:8px}
.sucalendar-daycol{grid-row:2/13;border-left:1px solid var(--line);background:repeating-linear-gradient(to bottom,#fff 0,#fff 51px,#eee8de 51px,#eee8de 52px)}.sucalendar-daycol.day-mon{grid-column:2}.sucalendar-daycol.day-tue{grid-column:3}.sucalendar-daycol.day-wed{grid-column:4}.sucalendar-daycol.day-thu{grid-column:5}.sucalendar-daycol.day-fri{grid-column:6}.sucalendar-daycol.is-today{background:repeating-linear-gradient(to bottom,#fffaf7 0,#fffaf7 51px,#eee8de 51px,#eee8de 52px)}
.sucalendar-event{z-index:3;margin:3px 5px;padding:7px 8px;border-left:3px solid var(--navy);background:#f0f3f6;overflow:hidden}.sucalendar-event small{display:block;color:#4f5a68;font-size:8px}.sucalendar-event b{display:block;margin-top:3px;color:#7f6950;font-size:7px;letter-spacing:.09em}.sucalendar-event h3{margin:3px 0;color:#17223a;font-size:10px;line-height:1.18}.sucalendar-event p{margin:0;color:#6e7782;font-size:8px}.sucalendar-event.lab{border-left-color:var(--gold);background:#f7f2e8}.sucalendar-event.tutorial{border-left-color:var(--orange);background:#fff0e8}.sucalendar-event.assessment{border-left-color:#d95c49;background:#fbebeb}
.e-mon-1{grid-column:2;grid-row:4/6}.e-tue-1{grid-column:3;grid-row:5/7}.e-mon-2{grid-column:2;grid-row:8/10}.e-wed-1{grid-column:4;grid-row:8/10}.e-thu-1{grid-column:5;grid-row:3/6}.e-thu-2{grid-column:5;grid-row:9/11}.e-fri-1{grid-column:6;grid-row:9/11}.e-wed-2{grid-column:4;grid-row:10/12}.e-fri-2{grid-column:6;grid-row:4/5}.sucalendar-now{position:absolute;left:calc(52px + (100% - 52px)*.8);right:0;top:210px;height:1px;background:var(--orange);z-index:4}.sucalendar-now span{position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:50%;background:var(--orange)}

@media(max-width:980px){.sucalendar-hero__grid{grid-template-columns:1fr}.sucalendar-toolbar__inner{grid-template-columns:1fr;padding:14px 0}.sucalendar-range,.sucalendar-actions{justify-content:flex-start}.sucalendar-layout{grid-template-columns:1fr}.sucalendar-sidebar{grid-template-columns:repeat(3,1fr)}.sucalendar-week{overflow-x:auto}.sucalendar-grid{min-width:860px}}
@media(max-width:680px){.sucalendar-hero h1{font-size:43px}.sucalendar-stats{grid-template-columns:1fr}.sucalendar-sidebar{grid-template-columns:1fr}.sucalendar-viewtabs,.sucalendar-range,.sucalendar-actions{flex-wrap:wrap}}


/* =====================================================================
   CALENDAR APPLICATION v0.7.1
   Calendar-only refinement:
   - remove inherited top whitespace between shared header and hero
   - align typography with Catalogue / Resources / supplied prototype
   - retain all existing Calendar functionality and markup
   ===================================================================== */

/* Remove the extra blank band introduced by the standard Moodle/theme
   content wrapper before the custom Calendar application. */
body#page-local-shivajiuniv-calendar #page,
body#page-local-shivajiuniv-calendar #page-content,
body#page-local-shivajiuniv-calendar #region-main-box,
body#page-local-shivajiuniv-calendar #region-main,
body#page-local-shivajiuniv-calendar .su-page,
body#page-local-shivajiuniv-calendar .su-content-grid,
body#page-local-shivajiuniv-calendar .su-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body#page-local-shivajiuniv-calendar .su-content-grid {
    min-height: 0 !important;
    padding-bottom: 0 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-app,
body#page-local-shivajiuniv-calendar .sucalendar-hero {
    margin-top: 0 !important;
}

/* Match the larger typography scale already used by Catalogue/Resources. */
body#page-local-shivajiuniv-calendar .suapp-eyebrow {
    font-size: 11px !important;
    letter-spacing: .18em !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-hero h1 {
    font-size: 64px !important;
    line-height: 1.01 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-hero p {
    font-size: 16px !important;
    line-height: 1.68 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-stats span {
    font-size: 10px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-stats strong {
    font-size: 34px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-stats small {
    font-size: 11px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-viewtabs a,
body#page-local-shivajiuniv-calendar .sucalendar-viewtabs button,
body#page-local-shivajiuniv-calendar .sucalendar-actions a,
body#page-local-shivajiuniv-calendar .sucalendar-range > a {
    font-size: 10px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-range strong {
    font-size: 19px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-mini h2,
body#page-local-shivajiuniv-calendar .sucalendar-deadlines h2 {
    font-size: 21px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-mini__weekdays b {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-mini__days span {
    font-size: 11px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines header span {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines time {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines time b {
    font-size: 22px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines small {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines h3 {
    font-size: 13px !important;
    line-height: 1.3 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-deadlines p {
    font-size: 10px !important;
    line-height: 1.42 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-legend h2 {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-legend p {
    font-size: 11px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-grid > header small {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-grid > header strong {
    font-size: 20px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-hours span {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-event small {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-event b {
    font-size: 8px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-event h3 {
    font-size: 12px !important;
    line-height: 1.2 !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-event p {
    font-size: 9px !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-event {
    padding: 8px 9px !important;
}

@media (max-width: 680px) {
    body#page-local-shivajiuniv-calendar .sucalendar-hero h1 {
        font-size: 46px !important;
    }
}

/* =====================================================================
   MY MODULES v0.8.0
   Faculty-facing prototype page. These rules are intentionally scoped to
   local_shivajiuniv/mymodules.php so Catalogue, Resources, Calendar and all
   existing Moodle/theme layouts keep their current behaviour.
   ===================================================================== */
body#page-local-shivajiuniv-mymodules .su-page__utility,
body#page-local-shivajiuniv-mymodules .su-side-region,
body#page-local-shivajiuniv-mymodules [data-region="blocks-column"],
body#page-local-shivajiuniv-mymodules #page-header,
body#page-local-shivajiuniv-mymodules .page-header-headings,
body#page-local-shivajiuniv-mymodules .breadcrumb,
body#page-local-shivajiuniv-mymodules .secondary-navigation,
body#page-local-shivajiuniv-mymodules .activity-header{display:none!important}
body#page-local-shivajiuniv-mymodules #page,
body#page-local-shivajiuniv-mymodules #page-content,
body#page-local-shivajiuniv-mymodules #region-main-box,
body#page-local-shivajiuniv-mymodules #region-main,
body#page-local-shivajiuniv-mymodules .su-page,
body#page-local-shivajiuniv-mymodules .su-content-grid,
body#page-local-shivajiuniv-mymodules .su-main{margin-top:0!important;padding-top:0!important}
body#page-local-shivajiuniv-mymodules .su-content-grid{display:block!important;max-width:none!important;padding-left:0!important;padding-right:0!important;padding-bottom:0!important;min-height:0!important}
body#page-local-shivajiuniv-mymodules .su-main{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;margin:0!important}
body#page-local-shivajiuniv-mymodules #region-main{padding:0!important}
body#page-local-shivajiuniv-mymodules .su-page{background:#fbf8f1!important}

.sumodules-app{--su-bg:#fff;--su-warm:#fbf8f1;--su-ink:#131820;--su-soft:#2a323f;--su-muted:#5c636e;--su-faint:#8a8f98;--su-line:#e6e0d2;--su-strong:#c9c0ac;--su-navy:#0b2b5c;--su-deep:#061a3d;--su-saffron:#c84b16;--su-saffron-soft:#f6e8dd;--su-gold:#a88234;--su-success:#2e7d5b;--su-danger:#a8321f;--su-max:1280px;--su-gutter:28px;background:var(--su-warm);color:var(--su-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.sumodules-shell{width:min(var(--su-max),calc(100% - 56px));margin:0 auto}
.sumodules-hero{position:relative;overflow:hidden;background:var(--su-bg);border-bottom:1px solid var(--su-line);padding:56px 0 60px}
.sumodules-hero:before{content:"";position:absolute;top:-200px;right:-240px;width:560px;height:560px;border:1px solid var(--su-line);border-radius:50%;opacity:.6;pointer-events:none}
.sumodules-hero__inner{display:grid;grid-template-columns:1.5fr 1fr;gap:56px;align-items:end;position:relative;z-index:1}
.sumodules-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--su-saffron);font-weight:600;margin-bottom:16px}
.sumodules-hero h1{font-family:"Cormorant Garamond","Noto Serif Devanagari",Georgia,serif;font-size:clamp(40px,4.8vw,60px);font-weight:500;letter-spacing:-.01em;color:var(--su-deep);line-height:1.05;margin:0 0 18px}
.sumodules-hero h1 em{font-style:italic;color:var(--su-saffron);font-weight:500}
.sumodules-hero__copy>p{font-size:16px;line-height:1.6;color:var(--su-soft);max-width:560px;margin:0}
.sumodules-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;margin:0;padding-top:24px;border-top:1px solid var(--su-strong)}
.sumodules-stats>div{padding-left:18px;border-left:2px solid var(--su-saffron)}
.sumodules-stats>div:nth-child(2){border-left-color:var(--su-navy)}.sumodules-stats>div:nth-child(3){border-left-color:var(--su-gold)}.sumodules-stats>div:nth-child(4){border-left-color:var(--su-deep)}
.sumodules-stats dt{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-muted);margin:0 0 6px;font-weight:600}.sumodules-stats dd{font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;font-weight:500;color:var(--su-navy);line-height:1;margin:0}.sumodules-stats dd em{font-style:normal;font-size:13px;color:var(--su-muted);margin-left:4px}
.sumodules-controls{background:var(--su-bg);border-bottom:1px solid var(--su-line)}
.sumodules-controls__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.sumodules-tabs{display:flex;overflow-x:auto}.sumodules-tabs a{padding:18px 4px;margin-right:26px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--su-muted);position:relative;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;text-decoration:none!important}.sumodules-tabs a.is-active{color:var(--su-navy)}.sumodules-tabs a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--su-saffron)}.sumodules-tabs a span{font-size:10px;color:var(--su-faint);background:var(--su-warm);padding:2px 7px;border-radius:100px}.sumodules-tabs a.is-active span{background:var(--su-saffron-soft);color:var(--su-saffron)}
.sumodules-search{display:flex;align-items:center;gap:12px}.sumodules-search__box{display:flex;align-items:center;gap:8px;background:var(--su-warm);border:1px solid var(--su-line);border-radius:4px;padding:0 13px;min-width:240px}.sumodules-search__box span{color:var(--su-muted)}.sumodules-search__box input{width:100%;border:0;background:transparent;padding:9px 0;font-size:13px;color:var(--su-soft);outline:0}.sumodules-sort{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--su-soft);padding:9px 12px;border:1px solid var(--su-line);border-radius:4px;background:var(--su-bg)}
.sumodules-current{padding:48px 0 64px;background:var(--su-warm)}.sumodules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.sumodule-card{background:var(--su-bg);border:1px solid var(--su-line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:.2s ease}.sumodule-card:hover{border-color:var(--su-strong);box-shadow:0 24px 48px -28px rgba(11,43,92,.22);transform:translateY(-2px)}.sumodule-card__strip{height:6px;background:var(--su-navy)}.sumodule-card__strip--saffron{background:var(--su-saffron)}.sumodule-card__strip--deep{background:var(--su-deep)}
.sumodule-card__head{padding:22px 26px 14px;display:flex;gap:16px;align-items:flex-start}.sumodule-card__code{font-family:"Cormorant Garamond",Georgia,serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--su-saffron);font-weight:700;background:var(--su-saffron-soft);padding:5px 10px;border-radius:3px;flex-shrink:0}.sumodule-card__faculty{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-faint);font-weight:600;margin-bottom:6px}.sumodule-card h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;font-weight:500;color:var(--su-deep);margin:0;line-height:1.2}.sumodule-card__subtitle{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:var(--su-muted);font-size:14px;font-weight:500;margin:5px 0 0}
.sumodule-card__meta{display:flex;align-items:center;gap:12px;padding:4px 26px 18px;font-size:12px;color:var(--su-muted);flex-wrap:wrap}.sumodule-card__meta i{width:3px;height:3px;border-radius:50%;background:var(--su-faint)}.sumodule-card__meta strong{color:var(--su-soft);font-weight:600}.sumodule-card__avatar{width:26px;height:26px;border-radius:50%;background:var(--su-navy);color:#e8d9b0;display:grid;place-items:center;font-size:12px}.sumodule-card__avatar--saffron{background:var(--su-saffron);color:#fff}.sumodule-card__avatar--deep{background:var(--su-deep)}
.sumodule-card__progress{padding:16px 26px;background:var(--su-warm);border-top:1px solid var(--su-line);border-bottom:1px solid var(--su-line)}.sumodule-card__progresshead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.sumodule-card__progresshead span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-faint);font-weight:600}.sumodule-card__progresshead strong{color:var(--su-navy);font-family:"Cormorant Garamond",Georgia,serif;font-size:18px}.sumodule-card__bar{height:5px;background:var(--su-bg);border-radius:3px;overflow:hidden;border:1px solid var(--su-line)}.sumodule-card__fill{display:block;height:100%;background:var(--su-navy);border-radius:3px}.sumodule-card__fill--saffron{background:var(--su-saffron)}.sumodule-card__progressmeta{margin-top:10px;font-size:12px;color:var(--su-muted);display:flex;justify-content:space-between;gap:12px}
.sumodule-card__attention{padding:18px 26px;display:flex;gap:14px;align-items:center;min-height:82px}.sumodule-card__attentionicon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--su-saffron-soft);color:#9a380e;font-size:18px}.sumodule-card__attentionicon--warn{background:rgba(184,114,43,.16);color:#b8722b}.sumodule-card__attentionicon--urgent{background:rgba(168,50,31,.1);color:var(--su-danger)}.sumodule-card__attentionicon--info{background:rgba(11,43,92,.08);color:var(--su-navy)}.sumodule-card__attention small{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-faint);font-weight:600;margin-bottom:3px}.sumodule-card__attention p{font-size:14px;font-weight:500;color:var(--su-ink);line-height:1.35;margin:0}
.sumodule-card__actions{display:flex;border-top:1px solid var(--su-line)}.sumodule-card__actions a{flex:1;padding:13px 8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--su-soft);font-weight:600;text-align:center;border-right:1px solid var(--su-line);text-decoration:none!important;display:flex;align-items:center;justify-content:center}.sumodule-card__actions a:last-child{border-right:0}.sumodule-card__actions a:hover{background:var(--su-warm);color:var(--su-navy)}.sumodule-card__actions a.is-primary{background:var(--su-navy);color:#fff;flex:1.6}.sumodule-card__actions a.is-primary:hover{background:var(--su-deep);color:#fff}
.sumodules-previous{padding:0 0 70px;background:var(--su-warm)}.sumodules-previous__head{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:0 0 24px;border-bottom:1px solid var(--su-line);margin-bottom:32px}.sumodules-previous__head .sumodules-eyebrow{margin-bottom:14px}.sumodules-previous__head h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(28px,3vw,38px);font-weight:500;line-height:1.15;color:var(--su-deep);margin:0}.sumodules-previous__head p{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:16px;color:var(--su-muted);margin:8px 0 0}.sumodules-previous__head>a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--su-navy);border-bottom:1px solid var(--su-navy);padding-bottom:3px;text-decoration:none!important;white-space:nowrap}
.sumodules-history{background:var(--su-bg);border:1px solid var(--su-line);border-radius:6px;overflow:hidden}.sumodules-history__row{display:grid;grid-template-columns:90px 1fr 220px 130px 100px;padding:20px 28px;align-items:center;border-bottom:1px solid var(--su-line);gap:20px}.sumodules-history__row:last-child{border-bottom:0}.sumodules-history__row:not(.sumodules-history__row--head):hover{background:var(--su-warm)}.sumodules-history__row--head{background:var(--su-warm);padding-top:14px;padding-bottom:14px;border-bottom:1px solid var(--su-strong)}.sumodules-history__row--head>*{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-faint);font-weight:600}.sumodules-history__row--head>div:nth-child(4){text-align:center}.sumodules-history__code{font-family:"Cormorant Garamond",Georgia,serif;font-size:13px;font-weight:600;color:var(--su-navy)}.sumodules-history h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:17px;font-weight:500;color:var(--su-ink);margin:0}.sumodules-history__row>div:nth-child(3){font-size:13px;color:var(--su-muted)}.sumodules-history h3+small{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--su-faint);margin-top:4px;font-weight:600}.sumodules-history__grade{text-align:center;font-family:"Cormorant Garamond",Georgia,serif;font-size:26px;font-weight:600;color:var(--su-deep);line-height:1}.sumodules-history__grade.high{color:var(--su-success)}.sumodules-history__grade small{display:block;font-family:Inter,sans-serif;font-size:11px;color:var(--su-faint);font-weight:600;letter-spacing:.04em;margin-top:4px}.sumodules-history__row>a{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--su-navy);font-weight:600;border-bottom:1px solid var(--su-navy);padding-bottom:3px;text-align:right;justify-self:end;text-decoration:none!important}
@media(max-width:980px){.sumodules-hero__inner{grid-template-columns:1fr;gap:32px;align-items:start}.sumodules-grid{grid-template-columns:1fr}.sumodules-controls__inner{flex-direction:column;align-items:flex-start;padding-top:12px;padding-bottom:12px}.sumodules-history__row{grid-template-columns:70px 1fr 100px;gap:16px;padding:18px 20px}.sumodules-history__row>div:nth-child(3),.sumodules-history__row>a{display:none}.sumodules-history__row--head>div:nth-child(3),.sumodules-history__row--head>div:nth-child(5){display:none}}
@media(max-width:640px){.sumodules-shell{width:min(100% - 28px,var(--su-max))}.sumodules-hero{padding:40px 0 44px}.sumodules-hero h1{font-size:44px}.sumodules-search{width:100%;flex-direction:column;align-items:stretch}.sumodules-search__box{min-width:0}.sumodules-tabs a{margin-right:18px;font-size:10px}.sumodule-card__head,.sumodule-card__meta,.sumodule-card__progress,.sumodule-card__attention{padding-left:18px;padding-right:18px}.sumodule-card__progressmeta{flex-direction:column}.sumodule-card__actions a{font-size:9px}.sumodules-previous__head{align-items:flex-start;flex-direction:column}.sumodules-history__row{grid-template-columns:58px 1fr 78px;padding:15px 12px}.sumodules-history h3{font-size:15px}.sumodules-history__grade{font-size:22px}}


/* =====================================================================
   DYNAMIC CALENDAR DATA v0.8.1
   Presentation helpers for Moodle calendar events. Existing prototype
   Calendar styles are retained; these rules only support dynamic output.
   ===================================================================== */
.sucalendar-roundnav {
    display: grid !important;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0 !important;
    border-radius: 50% !important;
    font-family: Georgia, serif;
    font-size: 20px !important;
    font-weight: 400 !important;
}

.sucalendar-mini header a {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: var(--navy);
    text-decoration: none;
    font-size: 15px;
}

.sucalendar-mini__days span.is-othermonth {
    color: #b8bec6;
}

.sucalendar-deadline {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 8px;
    padding: 14px 16px;
    border-bottom: 1px solid #ece5da;
    color: inherit;
    text-decoration: none !important;
}

.sucalendar-deadline:hover {
    background: #fffaf4;
}

.sucalendar-deadline:last-of-type {
    border-bottom: 0;
}

.sucalendar-deadline time {
    text-align: center;
    color: var(--navy);
    font-size: 9px;
    letter-spacing: .08em;
}

.sucalendar-deadline time b {
    display: block;
    color: var(--navy);
    font-family: Georgia, serif;
    font-size: 22px;
    font-weight: 400;
}

.sucalendar-deadline small {
    color: var(--orange);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
}

.sucalendar-deadline h3 {
    margin: 5px 0 3px;
    color: #17223a;
    font-size: 13px;
    line-height: 1.3;
}

.sucalendar-deadline p {
    margin: 0;
    color: #6f7782;
    font-size: 10px;
    line-height: 1.42;
}

.sucalendar-event {
    color: inherit !important;
    text-decoration: none !important;
}

.sucalendar-event:hover {
    filter: brightness(.985);
}

.sucalendar-empty {
    padding: 18px 16px;
    color: #6f7782;
    font-size: 11px;
}

.sucalendar-grid-empty {
    grid-column: 2 / 7;
    grid-row: 5 / 7;
    z-index: 3;
    align-self: center;
    justify-self: center;
    padding: 14px 18px;
    border: 1px solid #e3dbcf;
    background: rgba(255,255,255,.92);
    color: #6f7782;
    font-size: 12px;
}

.sucalendar-now {
    right: auto;
}


/* =====================================================================
   DYNAMIC WEEK TIMETABLE HOURS v0.8.3
   Default Week view remains 08:00-18:00. When Moodle contains timed
   weekday events outside that range, the grid expands to display them at
   their real time instead of silently dropping them.
   ===================================================================== */
body#page-local-shivajiuniv-calendar .sucalendar-grid {
    grid-template-rows:
        72px
        repeat(var(--su-calendar-hour-rows, 11), 52px) !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-hours {
    grid-row: 2 / span var(--su-calendar-hour-rows, 11) !important;
    grid-template-rows:
        repeat(var(--su-calendar-hour-rows, 11), 52px) !important;
}

body#page-local-shivajiuniv-calendar .sucalendar-daycol {
    grid-row: 2 / span var(--su-calendar-hour-rows, 11) !important;
}


/* =====================================================================
   DYNAMIC MY MODULES v0.9.0
   Helpers for Moodle-backed filtering/empty states. Existing visual rules
   are retained so the dynamic page keeps the approved prototype.
   ===================================================================== */
body#page-local-shivajiuniv-mymodules .sumodules-sort{min-height:38px;background:#fff}
body#page-local-shivajiuniv-mymodules .sumodules-empty{grid-column:1/-1;padding:42px;border:1px solid #ded5c5;background:#fff;text-align:center}
body#page-local-shivajiuniv-mymodules .sumodules-empty h2{margin:0 0 8px;color:#061a3d;font-family:Georgia,"Times New Roman",serif;font-weight:400}
body#page-local-shivajiuniv-mymodules .sumodules-empty p{margin:0;color:#66717e}


/* Dynamic Resources management v0.10.0: the filter controls are links so
   filtering works without JavaScript while retaining the prototype styling. */
.suresources-filters a{padding:8px 12px;border:1px solid #d6cdbc;border-radius:17px;background:#fff;color:#071f49;font-size:9px;font-weight:700;text-decoration:none}.suresources-filters a.is-active{background:#071f49;color:#fff;border-color:#071f49}.suresources-filters a span{margin-left:5px;opacity:.65}.suresources-mediagrid .thumb{text-decoration:none}.suresources-mediagrid .thumb.is-orange{background:#d94b11}.suresources-mediagrid .thumb.is-deep{background:#061a3d}.suresources-mediagrid .thumb.is-gold{background:#b68a2b}


/* =====================================================================
   DYNAMIC CATALOGUE FILTERS v0.11.0
   LEVEL/SEMESTER come from the Moodle category hierarchy. Delivery mode,
   language, credits and availability come from course custom fields.
   ===================================================================== */
body#page-local-shivajiuniv-catalogue .sucatalogue-filterform {
    margin: 0;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filterempty,
body#page-local-shivajiuniv-catalogue .sucatalogue-filterhint {
    margin: 7px 0 0;
    color: #8a929d;
    font-size: 9px;
    line-height: 1.4;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filterempty code {
    color: #6d4b36;
    font-size: inherit;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filteractions {
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 14px 16px 16px;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filteractions button {
    flex: 1;
    padding: 10px 8px;
    border: 1px solid var(--navy);
    background: var(--navy);
    color: #fff;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .09em;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-filteractions a {
    padding: 9px 8px;
    color: var(--navy);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .07em;
    text-decoration: none;
}

body#page-local-shivajiuniv-catalogue .sucatalogue-rangelegend b {
    color: var(--navy);
    font-weight: 700;
}
