
.rjupro{--navy:#0a337a;--blue:#1773dc;--sky:#2196e8;--ink:#14213d;--muted:#667892;--line:#dce5f2;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f8fbff,#edf4ff);padding:16px;border-radius:22px;width:calc(100% - 24px);max-width:none;margin:12px auto 24px;overflow:visible;position:relative}.rjupro *{box-sizing:border-box}.top{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;border-radius:18px;background:linear-gradient(120deg,#0a337a,#1764c9 58%,#2a94f2);box-shadow:0 18px 40px rgba(10,51,122,.22)}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.brand>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.16);font-size:23px}.brand b,.brand small{display:block}.brand small{color:#d7e7ff;margin-top:3px}.top nav{display:flex;gap:8px}.top nav button{padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-weight:750;cursor:pointer}.top nav button:hover{background:#fff;color:var(--navy)}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:10px;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(15,46,97,.07)}.filters input,.filters select{min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:11px}.go{padding:10px 18px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-weight:800}.layout{display:grid;grid-template-columns:310px minmax(0,1fr) 360px;gap:16px;align-items:start}.courses,.main,.updates{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(15,46,97,.08)}.courses{padding:12px;max-height:none;overflow:visible}.side-title{display:flex;justify-content:space-between;align-items:center;padding:5px 4px 12px}.side-title span{min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#edf4ff;color:var(--blue);font-weight:800}.course-card{padding:13px;margin-bottom:10px;border:1px solid #e3e9f2;border-radius:14px;cursor:pointer;transition:.18s}.course-card:hover{transform:translateY(-2px);border-color:#a9c9f5;box-shadow:0 10px 24px rgba(23,100,201,.1)}.course-card strong,.course-card small{display:block}.course-card small{margin-top:5px;color:var(--muted);line-height:1.45}.main{padding:18px;min-width:0;overflow:visible}.welcome{min-height:680px;padding:42px;border-radius:16px;background:radial-gradient(circle at right top,rgba(33,150,232,.15),transparent 28%),linear-gradient(145deg,#fbfdff,#f1f6fd)}.welcome>span{color:var(--blue);font-size:12px;font-weight:900}.welcome h1{font-size:clamp(38px,5vw,62px);line-height:1.05;margin:13px 0}.welcome p{font-size:17px;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:35px}.feature-grid div{padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff}.feature-grid b{display:block;margin-top:8px}.updates{overflow:hidden}.updates header{display:flex;align-items:center;gap:11px;padding:13px;background:linear-gradient(135deg,#0c80d8,#1f98e8);color:#fff}.updates header span{width:42px;height:42px;display:grid;place-items:center;background:#f14848}.updates header b{flex:1}.updates header i{width:31px;height:31px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.2);font-style:normal}.update-list{padding:12px}.update-card{padding:13px;margin-bottom:10px;border:1px solid #9cc1ff;border-radius:13px;background:#f4f8ff;cursor:pointer}.update-card strong,.update-card small{display:block}.update-card small{margin-top:5px;color:var(--muted)}.rjupro.detail-mode .layout{grid-template-columns:1fr}.rjupro.detail-mode .courses,.rjupro.detail-mode>.layout>.updates{display:none}.rjupro.detail-mode .main{width:100%}.back{margin-bottom:14px;padding:9px 13px;border:1px solid var(--blue);border-radius:10px;background:#fff;color:var(--blue);font-weight:750}.course-head{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:20px;border-radius:17px;background:linear-gradient(135deg,#0f459e,#1b72d7);color:#fff}.cover{width:120px;height:100px;object-fit:cover;border-radius:13px;background:#fff}.course-head h1{margin:7px 0;color:#fff}.course-head>div>span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.14);font-size:10px}.course-head .meta{color:#dbeafe}.semesters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.semesters button{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff}.semesters button.active{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);overflow:auto}.tabs button{padding:11px 14px;border:0;border-radius:10px 10px 0 0;background:#eef4ff;color:#31547f;font-weight:750}.tabs button.active{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;margin-top:14px;align-items:start}.inline-reader,.related{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.reader-head{padding:14px 16px;background:linear-gradient(135deg,#0f459e,#1b72d7);color:#fff}.reader-head h2{margin:4px 0;color:#fff}.book-stage{position:relative;display:grid;place-items:center;min-height:620px;padding:24px;background:#8a8a8a}.book{position:relative;display:grid;grid-template-columns:1fr 6px 1fr;width:min(100%,1050px);aspect-ratio:1.42;background:#666;filter:drop-shadow(0 15px 24px rgba(0,0,0,.26));transition:aspect-ratio .2s ease}.page{position:relative;display:grid;place-items:center;background:#fff;overflow:hidden}.page.left{border-radius:4px 0 0 4px}.page.right{border-radius:0 4px 4px 0}.page canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto}.page>span{position:absolute;bottom:5px;color:#555;font-size:10px}.book>i{background:linear-gradient(90deg,#aaa,#fff,#aaa)}.empty-note{display:none;position:absolute;inset:0;place-items:center;padding:30px;text-align:center;color:#fff;background:#666}.book-stage.empty .empty-note{display:grid}.arrow{position:absolute;z-index:3;width:48px;height:70px;border:0;background:rgba(0,0,0,.18);color:#fff;font-size:42px}.arrow.prev{left:5px}.arrow.next{right:5px}.controls{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;background:#fff;border-top:1px solid var(--line);flex-wrap:wrap}.controls button,.controls a{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-decoration:none}.solution-link{background:#eef8ff!important;color:var(--blue)!important}.thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:14px;background:#eef3f8}.thumb{padding:6px;border:1px solid var(--line);background:#fff}.thumb canvas{width:100%}.related header{display:flex;align-items:center;justify-content:space-between;padding:14px;background:linear-gradient(135deg,#0c80d8,#1f98e8);color:#fff}.related header span{min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.2)}.related-list{padding:12px}.related-card{padding:13px;margin-bottom:10px;border:1px solid #b9d2f7;border-radius:13px;background:#f6f9ff;cursor:pointer}.related-card.active{border-color:var(--blue);box-shadow:0 0 0 2px rgba(23,115,220,.12)}.related-card strong,.related-card small{display:block}.related-card small{margin-top:5px;color:var(--muted)}.rjupro footer{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:25px;margin-top:18px;padding:25px;border-radius:18px;background:linear-gradient(135deg,#071d49,#0b357c);color:#d8e6ff}.rjupro footer b{color:#fff}.rjupro footer p,.rjupro footer a,.rjupro footer button{display:block;margin:7px 0;color:#bdcfee;background:none;border:0;text-align:left;text-decoration:none}.rjupro footer small{grid-column:1/-1;padding-top:13px;border-top:1px solid rgba(255,255,255,.13)}.admin-login{min-height:75vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef4ff,#f8fbff);padding:20px}.admin-login form{width:min(480px,100%);padding:30px;border-radius:20px;background:#fff;box-shadow:0 20px 60px rgba(15,46,97,.14)}.admin-login label{display:grid;gap:6px;margin:13px 0}.admin-login input{padding:12px;border:1px solid #dce5f2;border-radius:10px}.admin-login button{width:100%;padding:12px;border:0;border-radius:10px;background:linear-gradient(135deg,#0a337a,#1773dc);color:#fff}.admin{display:grid;grid-template-columns:260px 1fr;min-height:80vh;background:#f6f9fd}.admin>aside{padding:22px;background:#0b2f6f;color:#fff}.admin>aside button,.admin>aside a{display:block;width:100%;padding:11px 12px;margin:5px 0;border:0;border-radius:9px;background:transparent;color:#dbe8ff;text-align:left;text-decoration:none}.admin>aside button.active,.admin>aside button:hover,.admin>aside a:hover{background:rgba(255,255,255,.13)}.admin>main{padding:25px}.admin>main section{display:none}.admin>main section.active{display:block}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stats>div{padding:22px;border:1px solid #dce5f2;border-radius:14px;background:#fff}.stats b{display:block;font-size:28px;margin-top:8px;color:#1773dc}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:20px;border:1px solid #dce5f2;border-radius:15px;background:#fff}.form label{display:grid;gap:6px}.form input,.form select,.form textarea{padding:11px;border:1px solid #dce5f2;border-radius:9px}.form .full{grid-column:1/-1}.form button{padding:11px;border:0;border-radius:10px;background:linear-gradient(135deg,#0a337a,#1773dc);color:#fff}.manage{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.manage>div{padding:16px;border:1px solid #dce5f2;border-radius:14px;background:#fff}.manage article{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #dce5f2}.manage article div{display:flex;gap:8px}.manage a{color:#1773dc}.manage a.delete{color:#d33}.course-view[hidden],.thumbs[hidden]{display:none!important}
@media(max-width:1200px){.layout{grid-template-columns:280px minmax(0,1fr)}.updates{grid-column:1/-1}.workspace{grid-template-columns:1fr 300px}.manage{grid-template-columns:1fr 1fr}}@media(max-width:900px){.filters{grid-template-columns:1fr 1fr}.search{grid-column:1/-1}.layout{grid-template-columns:1fr}.courses{max-height:none}.workspace{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr 1fr}.admin{grid-template-columns:1fr}.admin>aside{display:grid;grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:1fr 1fr}}@media(max-width:700px){.rjupro{padding:8px;border-radius:0}.top{align-items:flex-start;flex-direction:column}.top nav{width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.top nav button{padding:8px 4px;font-size:11px}.filters{grid-template-columns:1fr}.main{padding:10px}.welcome{min-height:480px;padding:25px}.course-head{grid-template-columns:1fr}.cover{width:100%;height:170px}.book-stage{min-height:520px;padding:12px}.book{grid-template-columns:1fr;aspect-ratio:.72;width:min(100%,440px)}.page.left,.book>i{display:none}.page.right{border-radius:4px}.thumbs{grid-template-columns:repeat(3,1fr)}.rjupro footer{grid-template-columns:1fr}.form,.stats,.manage{grid-template-columns:1fr}.form .full{grid-column:auto}.admin>aside{grid-template-columns:1fr 1fr}}


/* ===== Version 4: true full-page frontend ===== */
body.rjupro-fullpage{
    overflow-x:hidden!important;
    background:#f5f8fd!important;
}
body.rjupro-fullpage #page,
body.rjupro-fullpage .site,
body.rjupro-fullpage .site-content,
body.rjupro-fullpage .content-area,
body.rjupro-fullpage .site-main,
body.rjupro-fullpage main,
body.rjupro-fullpage article,
body.rjupro-fullpage .entry-content,
body.rjupro-fullpage .wp-site-blocks{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow:visible!important;
}
body.rjupro-fullpage .entry-header,
body.rjupro-fullpage .page-header,
body.rjupro-fullpage article>.entry-title,
body.rjupro-fullpage .site-footer,
body.rjupro-fullpage .elementor-location-footer{
    display:none!important;
}
body.rjupro-fullpage #rjupro{
    display:block!important;
    clear:both!important;
    width:calc(100% - 24px)!important;
    max-width:none!important;
    min-width:0!important;
    margin:12px auto 28px!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
}
body.admin-bar.rjupro-fullpage #rjupro{
    margin-top:12px!important;
}
.rjupro .layout,
.rjupro .main,
.rjupro .welcome,
.rjupro .course-view,
.rjupro .workspace{
    min-width:0!important;
}
.rjupro .top,
.rjupro .filters,
.rjupro .layout,
.rjupro footer{
    width:100%!important;
    max-width:none!important;
}
@media(max-width:782px){
    body.admin-bar.rjupro-fullpage #rjupro{margin-top:8px!important}
}


/* ===== Version 5 standalone page safety ===== */
body.rjupro-standalone-page .rjupro{
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin:12px auto 28px!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
}
body.rjupro-standalone-page .rjupro-standalone-wrap{
    overflow:visible!important;
}


/* ===== Version 6: compact course header, safer cards and expanded footer ===== */

/* Left-side course cards: keep text away from curved borders */
.rjupro .courses{
    padding:14px!important;
}
.rjupro .course-card{
    padding:16px 17px!important;
    margin:0 0 12px!important;
    border-radius:16px!important;
    overflow:visible!important;
    min-width:0!important;
}
.rjupro .course-card strong{
    display:block!important;
    margin:0!important;
    padding:0 2px!important;
    color:var(--ink)!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1.42!important;
    overflow-wrap:anywhere!important;
}
.rjupro .course-card small{
    display:block!important;
    margin-top:7px!important;
    padding:0 2px!important;
    color:var(--muted)!important;
    font-size:12px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
}

/* Course detail hero: title and meta stay on one line where space permits */
.rjupro .course-head{
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    min-height:0!important;
    padding:18px 20px!important;
}
.rjupro .course-head .cover{
    width:88px!important;
    height:74px!important;
    border-radius:12px!important;
}
.rjupro .course-head>div{
    min-width:0!important;
}
.rjupro .course-head h1{
    width:100%!important;
    max-width:100%!important;
    margin:7px 0 5px!important;
    font-size:clamp(24px,2.6vw,38px)!important;
    line-height:1.18!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.rjupro .course-head .meta{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.35!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* Prevent description and panels from touching rounded borders */
.rjupro .course-view{
    min-width:0!important;
}
.rjupro .workspace,
.rjupro .inline-reader,
.rjupro .related,
.rjupro .related-list,
.rjupro .related-card{
    min-width:0!important;
}
.rjupro .related-list{
    padding:14px!important;
}
.rjupro .related-card{
    padding:15px!important;
    border-radius:15px!important;
}
.rjupro .related-card strong{
    font-size:14px!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
}
.rjupro .related-card small{
    line-height:1.45!important;
}

/* Footer with Library, Hint Plus Platforms and Support */
.rjupro footer{
    grid-template-columns:minmax(240px,1.35fr) repeat(3,minmax(170px,.65fr))!important;
    gap:26px!important;
    padding:28px!important;
}
.rjupro footer>div{
    min-width:0!important;
}
.rjupro footer>div>b{
    display:block!important;
    margin-bottom:10px!important;
    color:#fff!important;
    font-size:14px!important;
}
.rjupro footer p{
    max-width:520px!important;
    line-height:1.65!important;
}
.rjupro footer a,
.rjupro footer button{
    margin:8px 0!important;
    padding:0!important;
    font-size:12.5px!important;
    line-height:1.45!important;
}
.rjupro footer small{
    font-size:11px!important;
    line-height:1.55!important;
}

/* Tablet */
@media(max-width:1100px){
    .rjupro footer{
        grid-template-columns:1fr 1fr!important;
    }
    .rjupro footer>div:first-child{
        grid-column:1 / -1!important;
    }
}

/* Mobile and small tablets */
@media(max-width:700px){
    .rjupro .courses{
        padding:11px!important;
    }
    .rjupro .course-card{
        padding:15px!important;
        border-radius:15px!important;
    }
    .rjupro .course-card strong{
        font-size:14px!important;
        line-height:1.4!important;
    }
    .rjupro .course-card small{
        font-size:11.5px!important;
        line-height:1.5!important;
    }

    .rjupro .course-head{
        display:block!important;
        padding:17px!important;
    }
    .rjupro .course-head .cover{
        display:none!important;
    }
    .rjupro .course-head h1{
        font-size:clamp(20px,5.7vw,27px)!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }
    .rjupro .course-head .meta{
        font-size:11.5px!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }

    .rjupro footer{
        grid-template-columns:1fr!important;
        padding:22px 18px!important;
    }
    .rjupro footer>div:first-child{
        grid-column:auto!important;
    }
}


/* ===== Version 7: professional navigation, browse pages and focused reader ===== */
.rjupro .top nav{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.rjupro .top nav a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:9px 12px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.10);
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}
.rjupro .top nav a:hover{
    color:#0b2f6f;
    background:#fff;
}

.rjupro.focus-mode{
    padding-top:8px!important;
}
.rjupro.focus-mode .layout{
    display:block!important;
}
.rjupro.focus-mode .main,
.rjupro.focus-mode .course-view{
    width:100%!important;
    max-width:none!important;
}
.rjupro.focus-mode .course-head{
    grid-template-columns:72px minmax(0,1fr)!important;
    align-items:center!important;
    min-height:0!important;
    padding:15px 18px!important;
}
.rjupro.focus-mode .course-head .cover{
    width:72px!important;
    height:72px!important;
    border-radius:13px!important;
}
.rjupro.focus-mode .course-head h1{
    margin:0 0 6px!important;
    font-size:clamp(22px,2.5vw,31px)!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.rjupro.focus-mode .course-head .meta{
    font-size:12px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.rjupro.focus-mode .back{
    min-height:44px!important;
    padding:10px 16px!important;
    border:1.5px solid #1670db!important;
    border-radius:11px!important;
    color:#0f5fc2!important;
    background:#fff!important;
    font-size:14px!important;
    font-weight:900!important;
    box-shadow:0 6px 16px rgba(18,88,180,.10)!important;
}
.rjupro.focus-mode .back:hover{
    color:#fff!important;
    background:#1769d2!important;
}

.rjupro .browse-view{
    margin:16px 0;
    padding:18px;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff;
    box-shadow:var(--shadow);
}
.rjupro .browse-view[hidden]{
    display:none!important;
}
.rjupro .browse-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
    padding:20px;
    border-radius:16px;
    color:#fff;
    background:linear-gradient(120deg,#0a337a,#1764c9 58%,#2a94f2);
}
.rjupro .browse-head small{
    color:#d9e9ff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.6px;
}
.rjupro .browse-head h1{
    margin:5px 0 3px;
    color:#fff;
    font-size:28px;
}
.rjupro .browse-head p{
    margin:0;
    color:#dbe9ff;
}
.rjupro .browse-back{
    min-height:42px;
    padding:9px 14px;
    border:1px solid rgba(255,255,255,.45);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.12);
    font-size:13px;
    font-weight:900;
}
.rjupro .browse-back:hover{
    color:#0a337a;
    background:#fff;
}
.rjupro .browse-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.rjupro .browse-card{
    min-width:0;
    padding:18px;
    border:1px solid #d9e4f2;
    border-radius:16px;
    background:linear-gradient(145deg,#fff,#f5f9ff);
    box-shadow:0 7px 20px rgba(15,46,97,.06);
    cursor:pointer;
    transition:.18s ease;
}
.rjupro .browse-card:hover{
    transform:translateY(-3px);
    border-color:#9bc1f5;
    box-shadow:0 13px 28px rgba(15,77,166,.12);
}
.rjupro .browse-card>span{
    display:inline-flex;
    margin-bottom:10px;
    padding:5px 8px;
    border-radius:999px;
    color:#1764c9;
    background:#eaf3ff;
    font-size:10px;
    font-weight:900;
}
.rjupro .browse-card strong{
    display:block;
    color:var(--ink);
    font-size:16px;
    line-height:1.42;
}
.rjupro .browse-card small{
    display:block;
    margin-top:8px;
    color:var(--muted);
    line-height:1.45;
}
.rjupro .browse-card button{
    margin-top:14px;
    min-height:40px;
    padding:10px 14px;
    border:0;
    border-radius:10px;
    color:#fff;
    background:linear-gradient(135deg,#0a337a,#1773dc);
    font-size:12px;
    font-weight:900;
}
.rjupro .browse-empty{
    grid-column:1/-1;
    padding:50px;
    text-align:center;
    color:var(--muted);
    border:2px dashed var(--line);
    border-radius:16px;
}

.rjupro .update-card{
    position:relative;
    padding-right:82px!important;
}
.rjupro .update-card button{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    padding:8px 10px;
    border:0;
    border-radius:9px;
    color:#fff;
    background:#0c5bbb;
    font-size:10px;
    font-weight:900;
}

@media(max-width:1100px){
    .rjupro .browse-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:900px){
    .rjupro .top nav{
        display:grid;
        grid-template-columns:repeat(4,minmax(0,1fr));
        width:100%;
    }
    .rjupro .top nav button,
    .rjupro .top nav a{
        width:100%;
        min-width:0;
        padding:8px 5px;
        font-size:10.5px;
    }
}
@media(max-width:700px){
    .rjupro .browse-head{
        align-items:flex-start;
        flex-direction:column;
        padding:16px;
    }
    .rjupro .browse-back{
        width:100%;
    }
    .rjupro .browse-grid{
        grid-template-columns:1fr;
    }
    .rjupro.focus-mode .course-head{
        grid-template-columns:54px minmax(0,1fr)!important;
        gap:10px!important;
        padding:12px 13px!important;
    }
    .rjupro.focus-mode .course-head .cover{
        display:block!important;
        width:54px!important;
        height:54px!important;
    }
    .rjupro.focus-mode .course-head h1{
        font-size:18px!important;
    }
    .rjupro.focus-mode .course-head .meta{
        font-size:11px!important;
    }
}
@media(max-width:520px){
    .rjupro .top nav{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


/* ===== Version 8: dedicated course page + full course titles ===== */

/* Course browse cards */
.rjupro .course-browse-card{
    display:flex;
    flex-direction:column;
    min-height:260px;
}
.rjupro .course-browse-card strong{
    font-size:18px;
    line-height:1.38;
}
.rjupro .course-browse-card p{
    margin:12px 0 0;
    color:var(--muted);
    font-size:13px;
    line-height:1.55;
}
.rjupro .course-browse-card button{
    margin-top:auto;
    align-self:flex-start;
}

/* Never shorten course title/meta inside the focused course page */
.rjupro.focus-mode .course-head h1,
.rjupro.focus-mode .course-head .title{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    max-width:none!important;
    font-size:clamp(23px,2.6vw,34px)!important;
    line-height:1.18!important;
}
.rjupro.focus-mode .course-head .meta{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    line-height:1.45!important;
}

/* If no course image is available, give title the complete blue header width */
.rjupro.focus-mode .course-head:has(.cover[style*="display: none"]),
.rjupro.focus-mode .course-head:has(.cover[src=""]){
    grid-template-columns:minmax(0,1fr)!important;
}
.rjupro.focus-mode .course-head .cover[style*="display: none"],
.rjupro.focus-mode .course-head .cover[src=""]{
    display:none!important;
}

/* More comfortable spacing for long course names */
.rjupro.focus-mode .course-head{
    padding:18px 20px!important;
}
.rjupro.focus-mode .course-head > div{
    min-width:0!important;
}

/* Consistent global material cards like the Hint Plus Library layout */
.rjupro .browse-grid{
    align-items:stretch;
}
.rjupro .browse-card{
    display:flex;
    flex-direction:column;
    min-height:220px;
}
.rjupro .browse-card button{
    margin-top:auto;
    align-self:flex-start;
}
.rjupro .browse-card strong{
    overflow-wrap:anywhere;
}

@media(max-width:700px){
    .rjupro.focus-mode .course-head h1,
    .rjupro.focus-mode .course-head .title{
        font-size:20px!important;
        line-height:1.22!important;
    }
    .rjupro .course-browse-card{
        min-height:0;
    }
}


/* ===== Version 9: unified professional card design ===== */

/* Shared grid for Courses, Syllabus, Questions and Models */
.rjupro .browse-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:stretch!important;
}

/* Shared card appearance */
.rjupro .browse-card,
.rjupro .course-browse-card{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    min-height:220px!important;
    padding:18px!important;
    border:1px solid #d8e5f5!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,#ffffff 0%,#f5f9ff 100%)!important;
    box-shadow:0 8px 22px rgba(16,61,125,.06)!important;
    overflow:hidden!important;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}

.rjupro .browse-card:hover,
.rjupro .course-browse-card:hover{
    transform:translateY(-3px)!important;
    border-color:#8fbcf4!important;
    box-shadow:0 14px 30px rgba(14,78,170,.13)!important;
}

/* Soft top label bar like the reference design */
.rjupro .browse-card>span,
.rjupro .course-browse-card>span{
    display:block!important;
    width:100%!important;
    margin:-18px -18px 14px!important;
    padding:8px 12px!important;
    border-radius:16px 16px 10px 10px!important;
    color:#1161c2!important;
    background:#eaf3ff!important;
    font-size:10px!important;
    font-weight:900!important;
    line-height:1.15!important;
    text-transform:none!important;
}

/* Card title */
.rjupro .browse-card strong,
.rjupro .course-browse-card strong{
    display:block!important;
    margin:0!important;
    color:#17263f!important;
    font-size:17px!important;
    font-weight:850!important;
    line-height:1.38!important;
    overflow-wrap:anywhere!important;
}

/* Course/material metadata */
.rjupro .browse-card small,
.rjupro .course-browse-card small{
    display:block!important;
    margin-top:9px!important;
    color:#6c7f9b!important;
    font-size:13px!important;
    line-height:1.5!important;
    overflow-wrap:anywhere!important;
}

/* Description for course cards */
.rjupro .course-browse-card p{
    margin:11px 0 0!important;
    color:#75869f!important;
    font-size:13px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
}

/* Same button across all sections */
.rjupro .browse-card button,
.rjupro .course-browse-card button{
    align-self:flex-start!important;
    min-height:42px!important;
    margin-top:auto!important;
    padding:10px 15px!important;
    border:0!important;
    border-radius:10px!important;
    color:#fff!important;
    background:linear-gradient(135deg,#0a337a 0%,#0f58b5 50%,#1875dc 100%)!important;
    box-shadow:0 8px 18px rgba(13,82,177,.20)!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:.1px!important;
}

.rjupro .browse-card button:hover,
.rjupro .course-browse-card button:hover{
    filter:brightness(1.06)!important;
    transform:translateY(-1px)!important;
}

/* Course cards should not be taller than needed but stay aligned */
.rjupro .course-browse-card{
    min-height:250px!important;
}

/* Improve browse section container spacing */
.rjupro .browse-view{
    padding:18px!important;
}
.rjupro .browse-head{
    margin-bottom:18px!important;
}

/* Tablets */
@media(max-width:1100px){
    .rjupro .browse-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:900px){
    .rjupro .browse-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media(max-width:620px){
    .rjupro .browse-grid{
        grid-template-columns:1fr!important;
    }
    .rjupro .browse-card,
    .rjupro .course-browse-card{
        min-height:0!important;
    }
}


/* ===== Version 10: professional mobile bottom navigation ===== */
.rjupro .mobile-bottom-nav{
    display:none;
}

@media(max-width:767px){
    html{
        scroll-padding-bottom:92px;
    }

    body.rjupro-fullpage{
        padding-bottom:86px!important;
    }

    .rjupro{
        padding-bottom:92px!important;
    }

    /* Keep the brand header, but move primary navigation to the bottom */
    .rjupro .top{
        padding:13px!important;
    }

    .rjupro .top nav{
        display:none!important;
    }

    .rjupro .brand{
        width:100%!important;
        min-width:0!important;
    }

    .rjupro .brand b{
        min-width:0!important;
        font-size:16px!important;
    }

    .rjupro .brand small{
        font-size:11px!important;
        white-space:normal!important;
    }

    .rjupro .mobile-bottom-nav{
        position:fixed!important;
        z-index:99980!important;
        left:10px!important;
        right:10px!important;
        bottom:10px!important;
        display:grid!important;
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
        gap:4px!important;
        min-height:66px!important;
        padding:7px!important;
        border:1px solid rgba(195,215,242,.95)!important;
        border-radius:20px!important;
        background:rgba(255,255,255,.96)!important;
        box-shadow:
            0 18px 45px rgba(8,42,92,.22),
            0 3px 10px rgba(8,42,92,.10)!important;
        backdrop-filter:blur(18px)!important;
        -webkit-backdrop-filter:blur(18px)!important;
    }

    .rjupro .mobile-bottom-nav button{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:3px!important;
        min-width:0!important;
        min-height:52px!important;
        padding:6px 2px!important;
        border:0!important;
        border-radius:14px!important;
        color:#657791!important;
        background:transparent!important;
        box-shadow:none!important;
        cursor:pointer!important;
        transition:
            color .18s ease,
            background .18s ease,
            transform .18s ease!important;
    }

    .rjupro .mobile-bottom-nav button span{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:24px!important;
        height:24px!important;
        color:inherit!important;
        font-size:20px!important;
        font-weight:900!important;
        line-height:1!important;
    }

    .rjupro .mobile-bottom-nav button b{
        display:block!important;
        max-width:100%!important;
        overflow:hidden!important;
        color:inherit!important;
        font-size:9.5px!important;
        font-weight:850!important;
        line-height:1.05!important;
        white-space:nowrap!important;
        text-overflow:ellipsis!important;
    }

    .rjupro .mobile-bottom-nav button.active{
        color:#ffffff!important;
        background:linear-gradient(145deg,#0a337a,#1768cf 62%,#2b93ee)!important;
        box-shadow:0 7px 15px rgba(20,96,204,.26)!important;
        transform:translateY(-2px)!important;
    }

    .rjupro .mobile-bottom-nav button:active{
        transform:scale(.96)!important;
    }

    /* Bottom navigation replaces Back to Home/Courses on mobile */
    .rjupro .back,
    .rjupro .browse-back{
        display:none!important;
    }

    .rjupro .browse-head{
        margin-bottom:13px!important;
    }

    /* More compact and readable mobile spacing */
    .rjupro .filters{
        grid-template-columns:1fr!important;
        gap:8px!important;
        padding:10px!important;
    }

    .rjupro .filters .go{
        width:100%!important;
        min-height:44px!important;
    }

    .rjupro .browse-view{
        margin-top:10px!important;
        padding:10px!important;
        border-radius:15px!important;
    }

    .rjupro .browse-head{
        padding:15px!important;
        border-radius:14px!important;
    }

    .rjupro .browse-head h1{
        font-size:23px!important;
        line-height:1.2!important;
    }

    .rjupro .browse-card,
    .rjupro .course-browse-card{
        padding:16px!important;
        border-radius:14px!important;
    }

    .rjupro .browse-card>span,
    .rjupro .course-browse-card>span{
        margin:-16px -16px 13px!important;
        border-radius:14px 14px 9px 9px!important;
    }

    .rjupro.focus-mode .course-head{
        margin-top:0!important;
    }

    .rjupro .reader-grid{
        grid-template-columns:1fr!important;
    }

    .rjupro .related{
        order:-1!important;
    }

    .rjupro footer{
        margin-bottom:4px!important;
    }
}

@media(max-width:390px){
    .rjupro .mobile-bottom-nav{
        left:6px!important;
        right:6px!important;
        bottom:6px!important;
        gap:2px!important;
        padding:6px 4px!important;
    }

    .rjupro .mobile-bottom-nav button b{
        font-size:8.7px!important;
    }

    .rjupro .mobile-bottom-nav button span{
        font-size:18px!important;
    }
}


/* ===== Version 11: mobile parity, live search, compact cards and reliable loading ===== */

/* Live browse search */
.rjupro .browse-search-wrap{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    margin:0 0 16px!important;
}
.rjupro .browse-search-wrap>span{
    position:absolute!important;
    left:15px!important;
    z-index:2!important;
    color:#71839d!important;
    font-size:20px!important;
    pointer-events:none!important;
}
.rjupro .browse-search{
    width:100%!important;
    min-height:48px!important;
    padding:11px 48px 11px 45px!important;
    border:1px solid #d5e2f2!important;
    border-radius:13px!important;
    outline:none!important;
    color:#17263f!important;
    background:#fff!important;
    box-shadow:0 5px 16px rgba(14,61,124,.05)!important;
    font-size:14px!important;
}
.rjupro .browse-search:focus{
    border-color:#68a7ef!important;
    box-shadow:0 0 0 4px rgba(56,133,224,.12)!important;
}
.rjupro .browse-search-clear{
    position:absolute!important;
    right:10px!important;
    display:none;
    width:32px!important;
    height:32px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    color:#4d607c!important;
    background:#edf4fd!important;
    font-size:20px!important;
    line-height:1!important;
}
.rjupro .browse-no-results{
    grid-column:1/-1!important;
    padding:42px 20px!important;
    border:2px dashed #d5e2f2!important;
    border-radius:15px!important;
    color:#6f819d!important;
    text-align:center!important;
    background:#fbfdff!important;
}

/* Compact browse cards */
.rjupro .browse-card{
    min-height:150px!important;
    height:auto!important;
    padding:15px 16px!important;
}
.rjupro .browse-card strong{
    margin:0!important;
    font-size:16px!important;
    line-height:1.34!important;
}
.rjupro .browse-card small{
    margin-top:6px!important;
    line-height:1.38!important;
}
.rjupro .browse-card button{
    min-height:40px!important;
    margin-top:12px!important;
    padding:9px 13px!important;
}
.rjupro .browse-grid{
    gap:12px!important;
    align-items:start!important;
}

/* Loading and retry states */
.rjupro .rju-inline-loading,
.rjupro .rju-load-error{
    grid-column:1/-1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    min-height:150px!important;
    width:100%!important;
    padding:24px!important;
    border:1.5px dashed #cbdced!important;
    border-radius:16px!important;
    color:#657a98!important;
    background:#fbfdff!important;
    font-size:14px!important;
    font-weight:750!important;
    text-align:center!important;
}
.rjupro button.rju-load-error{
    cursor:pointer!important;
}
.rjupro .rju-inline-loading span{
    width:22px!important;
    height:22px!important;
    border:3px solid #d5e6fa!important;
    border-top-color:#1768cf!important;
    border-radius:50%!important;
    animation:rjuSpin .75s linear infinite!important;
}
@keyframes rjuSpin{
    to{transform:rotate(360deg)}
}

@media(max-width:767px){
    /* Remove the large blue browse hero on mobile only */
    .rjupro .browse-head{
        display:none!important;
    }

    .rjupro .browse-view{
        padding-top:10px!important;
    }

    .rjupro .browse-search-wrap{
        margin-top:0!important;
    }

    /* Two-column course cards on mobile */
    .rjupro .browse-grid:has(.course-browse-card){
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
        align-items:stretch!important;
    }

    .rjupro .course-browse-card{
        min-width:0!important;
        min-height:0!important;
        padding:13px!important;
        border-radius:14px!important;
    }

    .rjupro .course-browse-card>span{
        margin:-13px -13px 10px!important;
        border-radius:14px 14px 9px 9px!important;
    }

    .rjupro .course-browse-card strong{
        font-size:14px!important;
        line-height:1.3!important;
        overflow-wrap:anywhere!important;
    }

    .rjupro .course-browse-card small,
    .rjupro .course-browse-card p{
        font-size:10.5px!important;
        line-height:1.35!important;
    }

    .rjupro .course-browse-card button{
        width:100%!important;
        min-height:38px!important;
        padding:8px 7px!important;
        border-radius:9px!important;
        font-size:9.5px!important;
        white-space:nowrap!important;
    }

    .rjupro .browse-card{
        min-height:0!important;
        padding:14px!important;
    }

    .rjupro .browse-search{
        min-height:46px!important;
        font-size:13px!important;
    }

    .rjupro .rju-inline-loading,
    .rjupro .rju-load-error{
        min-height:120px!important;
        padding:20px 14px!important;
    }
}

@media(max-width:370px){
    .rjupro .course-browse-card{
        padding:11px!important;
    }

    .rjupro .course-browse-card>span{
        margin:-11px -11px 9px!important;
    }

    .rjupro .course-browse-card strong{
        font-size:13px!important;
    }

    .rjupro .course-browse-card button{
        font-size:8.8px!important;
    }
}


/* ===== Version 12: Hint Plus-style live search + mobile Models active fix ===== */
.rjupro .browse-search-wrap{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    margin:0 0 16px!important;
}
.rjupro .browse-search-wrap>span{
    position:absolute!important;
    left:16px!important;
    z-index:2!important;
    color:#71839d!important;
    font-size:20px!important;
    pointer-events:none!important;
}
.rjupro .browse-search{
    display:block!important;
    width:100%!important;
    min-height:50px!important;
    padding:12px 50px 12px 46px!important;
    border:1px solid #d4e1f1!important;
    border-radius:14px!important;
    outline:none!important;
    color:#17263f!important;
    background:#fff!important;
    box-shadow:0 5px 16px rgba(14,61,124,.05)!important;
    font-size:15px!important;
}
.rjupro .browse-search::placeholder{
    color:#98a5b8!important;
}
.rjupro .browse-search:focus{
    border-color:#63a4ef!important;
    box-shadow:0 0 0 4px rgba(56,133,224,.13)!important;
}
.rjupro .browse-search-clear{
    position:absolute!important;
    right:10px!important;
    z-index:3!important;
    display:none;
    width:34px!important;
    height:34px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    color:#50627d!important;
    background:#edf4fd!important;
    font-size:21px!important;
    line-height:1!important;
    cursor:pointer!important;
}
.rjupro .browse-no-results{
    grid-column:1/-1!important;
    width:100%!important;
    padding:42px 20px!important;
    border:2px dashed #d5e2f2!important;
    border-radius:15px!important;
    color:#6f819d!important;
    text-align:center!important;
    background:#fbfdff!important;
}

@media(max-width:767px){
    .rjupro .mobile-bottom-nav button.active,
    .rjupro .mobile-bottom-nav button[data-mobile-nav="models"].active{
        color:#fff!important;
        background:linear-gradient(145deg,#0a337a,#1768cf 62%,#2b93ee)!important;
        box-shadow:0 7px 15px rgba(20,96,204,.26)!important;
        transform:translateY(-2px)!important;
    }
    .rjupro .browse-search-wrap{
        margin:0 0 12px!important;
    }
    .rjupro .browse-search{
        min-height:46px!important;
        padding:10px 44px 10px 42px!important;
        border-radius:13px!important;
        font-size:13px!important;
    }
    .rjupro .browse-search-wrap>span{
        left:14px!important;
        font-size:18px!important;
    }
    .rjupro .browse-search-clear{
        right:8px!important;
        width:31px!important;
        height:31px!important;
        font-size:19px!important;
    }
}


/* ===== Version 13: working live filter + cleaner course cards ===== */

/* Force searched-out cards to disappear even when card display uses !important */
.rjupro .browse-grid .browse-search-hidden,
.rjupro .browse-grid .browse-card.browse-search-hidden,
.rjupro .browse-grid .course-browse-card.browse-search-hidden{
    display:none!important;
}

/* All Courses cards now end after semester count */
.rjupro .course-browse-card p{
    display:none!important;
}

.rjupro .course-browse-card button{
    margin-top:14px!important;
}

.rjupro .course-browse-card{
    min-height:0!important;
    height:auto!important;
}

@media(max-width:767px){
    .rjupro .course-browse-card button{
        margin-top:10px!important;
    }
}


/* ===== Version 14: premium count badge integrated with search ===== */

/* Remove duplicated blue browse heading on desktop and tablet too */
.rjupro .browse-head{
    display:none!important;
}

.rjupro .browse-search-row{
    display:grid!important;
    grid-template-columns:minmax(190px,auto) minmax(0,1fr)!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    margin:0 0 16px!important;
}

.rjupro .browse-count-badge{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:50px!important;
    padding:10px 16px!important;
    border:1px solid #d4e1f1!important;
    border-radius:14px!important;
    color:#17315a!important;
    background:linear-gradient(135deg,#edf5ff,#f8fbff)!important;
    box-shadow:0 5px 16px rgba(14,61,124,.05)!important;
    white-space:nowrap!important;
}

.rjupro .browse-count-badge>span{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:30px!important;
    height:30px!important;
    border-radius:9px!important;
    background:#dcecff!important;
    font-size:17px!important;
}

.rjupro .browse-count-badge strong{
    font-size:13px!important;
    font-weight:850!important;
    line-height:1.2!important;
}

.rjupro .browse-search-row .browse-search-wrap{
    margin:0!important;
}

@media(max-width:767px){
    /* Keep the existing mobile layout exactly as before */
    .rjupro .browse-search-row{
        display:block!important;
        margin:0 0 12px!important;
    }

    .rjupro .browse-count-badge{
        display:none!important;
    }

    .rjupro .browse-search-row .browse-search-wrap{
        width:100%!important;
        margin:0!important;
    }
}


/* ===== Version 17: full-page scrollable admin + taxonomy manager ===== */
html:has(body.rjupro-admin-fullpage),
body.rjupro-admin-fullpage{
  width:100%!important;
  min-height:100%!important;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:#f5f8fd!important;
}
body.rjupro-admin-fullpage #page,
body.rjupro-admin-fullpage .site,
body.rjupro-admin-fullpage .site-content,
body.rjupro-admin-fullpage .content-area,
body.rjupro-admin-fullpage .site-main,
body.rjupro-admin-fullpage main,
body.rjupro-admin-fullpage article,
body.rjupro-admin-fullpage .entry-content,
body.rjupro-admin-fullpage .wp-site-blocks{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
body.rjupro-admin-fullpage .site-header,
body.rjupro-admin-fullpage .site-footer,
body.rjupro-admin-fullpage .entry-header,
body.rjupro-admin-fullpage .page-header,
body.rjupro-admin-fullpage .elementor-location-header,
body.rjupro-admin-fullpage .elementor-location-footer{
  display:none!important;
}
.rjupro-admin-standalone{
  width:100%!important;
  min-height:100vh!important;
  overflow:visible!important;
}
.rjupro-admin-standalone > h2{
  margin:28px auto 22px!important;
  text-align:center!important;
  font-size:30px!important;
  color:#17233a!important;
}
.rjupro-admin-standalone .admin{
  width:min(1420px,calc(100% - 32px))!important;
  min-height:calc(100vh - 120px)!important;
  margin:0 auto 40px!important;
  border-radius:22px!important;
  overflow:visible!important;
  box-shadow:0 18px 55px rgba(17,56,112,.10)!important;
}
.rjupro-admin-standalone .admin>aside{
  border-radius:22px 0 0 22px!important;
  position:sticky!important;
  top:48px!important;
  align-self:start!important;
  min-height:calc(100vh - 100px)!important;
}
.rjupro-admin-standalone .admin>main{
  min-width:0!important;
  overflow:visible!important;
}
.rju-admin-title-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:18px!important;
}
.rju-admin-title-row h1{margin:0 0 5px!important}
.rju-admin-title-row p{margin:0!important;color:#667894!important}
.rju-term-manager{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.rju-term-panel{
  background:#fff!important;
  border:1px solid #d9e4f2!important;
  border-radius:18px!important;
  padding:18px!important;
  min-width:0!important;
}
.rju-term-panel h2{
  margin:0 0 14px!important;
  font-size:21px!important;
  color:#15243d!important;
}
.rju-term-add{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  margin-bottom:16px!important;
}
.rju-term-add input,.rju-term-edit input{
  min-width:0!important;
  width:100%!important;
  padding:11px 12px!important;
  border:1px solid #d8e3f1!important;
  border-radius:10px!important;
  font:inherit!important;
}
.rju-term-add button,.rju-edit-btn{
  border:0!important;
  border-radius:10px!important;
  padding:10px 15px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#0a3f91,#1685ee)!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.rju-term-list{
  display:grid!important;
  gap:10px!important;
}
.rju-term-item{
  padding:11px!important;
  border:1px solid #e1e9f4!important;
  border-radius:13px!important;
  background:#f9fbff!important;
}
.rju-term-edit{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:center!important;
}
.rju-term-actions{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  align-items:center!important;
  margin-top:9px!important;
}
.rju-status{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:58px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:0 5px 14px rgba(15,23,42,.12)!important;
}
.rju-status.is-on{background:#16a34a!important}
.rju-status.is-off{background:#dc2626!important}
.rju-term-delete{
  color:#dc2626!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.rju-empty{color:#71819a!important}
@media(max-width:1100px){
  .rju-term-manager{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .rjupro-admin-standalone .admin{
    width:calc(100% - 16px)!important;
    grid-template-columns:1fr!important;
  }
  .rjupro-admin-standalone .admin>aside{
    position:relative!important;
    top:auto!important;
    min-height:auto!important;
    border-radius:18px 18px 0 0!important;
  }
}
@media(max-width:600px){
  .rjupro-admin-standalone > h2{font-size:24px!important}
  .rjupro-admin-standalone .admin>main{padding:15px!important}
  .rju-term-add,.rju-term-edit{grid-template-columns:1fr!important}
}


/* ===== Version 18: syllabus visibility and professional Manage/Edit ===== */
.rju-manage-search{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 18px!important;
  padding:0 15px!important;
  min-height:52px!important;
  background:#fff!important;
  border:1px solid #d7e3f2!important;
  border-radius:14px!important;
}
.rju-manage-search span{font-size:22px!important;color:#5e7494!important}
.rju-manage-search input{
  width:100%!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  font:inherit!important;
  color:#15243d!important;
}
.rju-manage-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:start!important;
}
.rju-manage-grid>div{
  min-width:0!important;
  max-height:560px!important;
  overflow:auto!important;
  scrollbar-width:thin!important;
}
.rju-manage-grid h3{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  background:#fff!important;
  padding-bottom:12px!important;
}
.rju-manage-grid h3 small{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:30px!important;
  height:30px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  background:#e9f3ff!important;
  color:#0758b8!important;
  font-size:12px!important;
}
.rju-manage-grid article{
  gap:12px!important;
  align-items:flex-start!important;
}
.rju-manage-grid article>span{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}
.rju-manage-grid article strong{
  color:#17233a!important;
  overflow-wrap:anywhere!important;
}
.rju-manage-grid article small{
  color:#70819a!important;
  line-height:1.45!important;
}
.rju-manage-grid article>div{
  display:flex!important;
  gap:9px!important;
  flex:0 0 auto!important;
}
.rju-legacy-item{background:#fffaf0!important}
.rju-legacy-badge{
  display:inline-flex!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#fff0c2!important;
  color:#9a5c00!important;
  font-style:normal!important;
  font-weight:800!important;
}
.rju-missing{
  color:#dc2626!important;
  font-style:normal!important;
  font-weight:800!important;
}
.stats>div small{
  display:block!important;
  margin-top:5px!important;
  color:#72829b!important;
  font-size:12px!important;
}
@media(max-width:980px){
  .rju-manage-grid{grid-template-columns:1fr!important}
  .rju-manage-grid>div{max-height:none!important}
}
