:root{--a:#7c3aed;--bg:#f7f6fb;--b:#e8e4f0;--m:#6f7280}.ipd-body{margin:0;background:var(--bg);color:#1d2330;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.ipd-shell{min-height:100vh;display:flex}.ipd-sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:#17152c;color:#fff;padding:22px 16px;box-sizing:border-box;overflow:auto;z-index:40}.ipd-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:20px;font-weight:800;padding:0 8px 22px}.ipd-brand img{width:38px;height:38px;object-fit:contain;background:#fff;border-radius:10px;padding:4px}.ipd-profile{background:rgba(255,255,255,.07);border-radius:16px;padding:16px;margin-bottom:18px;display:grid;gap:4px}.ipd-avatar{width:36px;height:36px;border-radius:50%;background:#fff;color:#17152c;display:inline-grid;place-items:center;font-weight:800}.ipd-avatar.large{width:52px;height:52px}.ipd-profile small{color:#cfc7e9}.ipd-nav-link{display:block;padding:11px 12px;color:#ddd8ef;text-decoration:none;border-radius:10px;margin:3px 0;font-size:14px}.ipd-nav-link.active,.ipd-nav-link:hover{background:#fff;color:#211e39}.ipd-main{margin-left:270px;flex:1;min-width:0}.ipd-header{height:76px;background:#fff;border-bottom:1px solid var(--b);display:flex;justify-content:space-between;align-items:center;padding:0 28px;position:sticky;top:0;z-index:30}.ipd-header h1{font-size:18px;margin:2px 0}.ipd-kicker{font-size:10px;letter-spacing:.13em;font-weight:800;color:var(--a)}.ipd-user{display:flex;align-items:center;gap:8px;font-size:13px}.ipd-menu{display:none}.ipd-content{max-width:1440px;margin:0 auto;padding:28px}.ipd-hero{background:linear-gradient(135deg,#211a43,#5b2ca7);color:#fff;border-radius:22px;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.ipd-hero h2,.ipd-page-head h2{font-size:30px;margin:8px 0}.ipd-hero p{color:#ebe5ff}.ipd-pill{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:#efe8ff;color:#6d28d9;padding:6px 9px;border-radius:999px;display:inline-block}.ipd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.ipd-stat,.ipd-card,.ipd-mini,.ipd-empty{background:#fff;border:1px solid var(--b);border-radius:18px;padding:20px;box-shadow:0 8px 30px rgba(35,24,60,.04)}.ipd-stat span{display:block;color:var(--m);font-size:12px}.ipd-stat strong{display:block;font-size:26px;margin-top:8px}.ipd-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.ipd-flow{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ipd-flow b{padding:11px 14px;border-radius:10px;background:#f6f3fb}.ipd-btn{display:inline-block;border:1px solid #d9d2e8;background:#fff;color:#28223b;border-radius:11px;padding:10px 14px;font-weight:700;text-decoration:none;cursor:pointer}.ipd-btn.primary{background:#6d28d9;color:#fff;border-color:#6d28d9}.ipd-hero .ipd-btn.primary{background:#fff;color:#4c1d95}.ipd-page-head{margin-bottom:18px}.ipd-page-head p{margin:0;color:var(--m)}.ipd-input{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #ded8e8;border-radius:10px;background:#fff;margin:7px 0 14px;font:inherit}.ipd-drop{border:2px dashed #d7cbed;background:#faf8ff;border-radius:16px;padding:45px 20px;text-align:center;color:#5d5573;margin-bottom:18px}.ipd-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#5e586d}.ipd-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.ipd-empty{text-align:center;padding:50px;color:var(--m)}.ipd-list{display:grid;gap:10px}.ipd-list article{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--b);border-radius:14px;padding:16px}.ipd-list small{display:block;color:var(--m);margin-top:4px}.ipd-steps{line-height:2}.ipd-mobile-nav{display:none}@media(max-width:980px){.ipd-sidebar{transform:translateX(-100%);transition:.25s}.ipd-sidebar.open{transform:translateX(0)}.ipd-main{margin-left:0}.ipd-menu{display:inline-block;border:0;background:transparent;font-size:22px}.ipd-header{padding:0 16px}.ipd-user span:last-child{display:none}.ipd-content{padding:18px 18px 80px}.ipd-grid{grid-template-columns:1fr}.ipd-stats{grid-template-columns:repeat(2,1fr)}.ipd-card-grid{grid-template-columns:repeat(2,1fr)}.ipd-mobile-nav{display:grid;position:fixed;bottom:0;left:0;right:0;grid-template-columns:repeat(4,1fr);background:#fff;border-top:1px solid var(--b);z-index:35}.ipd-mobile-nav a{font-size:11px;text-align:center;text-decoration:none;color:#302b3f;padding:12px 5px}}@media(max-width:640px){.ipd-hero{flex-direction:column;align-items:flex-start;padding:22px}.ipd-hero h2,.ipd-page-head h2{font-size:24px}.ipd-card-grid{grid-template-columns:1fr 1fr}}
/* ============================================================
   INOVEDU R2B - PREMIUM PUBLISHING HEADER
   ============================================================ */

.ipd-header-premium{
    min-height:82px;
    padding:14px 26px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    position:sticky;
    top:0;
    z-index:60;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(15,23,42,.07);
    box-shadow:0 8px 30px rgba(15,23,42,.035);
}

.ipd-header-left,
.ipd-header-actions,
.ipd-kicker-row,
.ipd-account-trigger,
.ipd-account-menu-head,
.ipd-account-role{
    display:flex;
    align-items:center;
}

.ipd-header-left{gap:15px}
.ipd-header-actions{gap:11px}

.ipd-heading-block h1{
    margin:3px 0 0;
    font-size:22px;
    line-height:1.15;
    color:#111827;
    font-weight:800;
    letter-spacing:-.03em;
}

.ipd-kicker-row{gap:7px}

.ipd-kicker{
    font-size:10px;
    font-weight:800;
    letter-spacing:.1em;
    color:#7c3aed;
}

.ipd-product-dot{
    width:7px;height:7px;border-radius:50%;
    background:#8b5cf6;
    box-shadow:0 0 0 4px rgba(139,92,246,.11);
}

.ipd-plan-badge{
    padding:3px 7px;
    border-radius:999px;
    font-size:9px;
    line-height:1;
    font-weight:900;
    color:#7c3aed;
    background:#f5f3ff;
    border:1px solid #ede9fe;
}

.ipd-notification-btn{
    position:relative;
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#faf9ff;
    border:1px solid #ede9fe;
    color:#6d5ea8;
    transition:.2s ease;
}

.ipd-notification-btn:hover{
    background:#f4f0ff;
    color:#7c3aed;
    transform:translateY(-1px);
}

.ipd-notification-btn svg{
    width:19px;
    height:19px;
    fill:currentColor;
}

.ipd-notification-count{
    position:absolute;
    top:-5px;
    right:-5px;
    min-width:19px;
    height:19px;
    padding:0 5px;
    display:grid;
    place-items:center;
    color:white;
    background:#ef4444;
    border:2px solid white;
    border-radius:999px;
    font-size:9px;
    font-weight:900;
}

.ipd-account-wrap{position:relative}

.ipd-account-trigger{
    min-width:210px;
    padding:6px 9px 6px 7px;
    gap:10px;
    border:1px solid #ebe7f6;
    background:white;
    border-radius:16px;
    cursor:pointer;
    text-align:left;
    box-shadow:0 6px 20px rgba(15,23,42,.04);
    transition:.2s ease;
}

.ipd-account-trigger:hover,
.ipd-account-trigger.is-open{
    border-color:#d8ccff;
    box-shadow:0 10px 26px rgba(124,58,237,.10);
}

.ipd-avatar,
.ipd-account-menu-avatar{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:grid;
    place-items:center;
    border-radius:12px;
    font-size:13px;
    font-weight:900;
    color:white;
    background:linear-gradient(135deg,#4f46e5,#9333ea);
    box-shadow:0 6px 16px rgba(124,58,237,.23);
}

.ipd-account-text{
    display:flex;
    flex:1;
    min-width:0;
    flex-direction:column;
}

.ipd-account-text strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px;
    color:#172033;
}

.ipd-account-text small{
    margin-top:2px;
    color:#8a94a7;
    font-size:10px;
}

.ipd-account-chevron{
    width:16px;
    height:16px;
    fill:none;
    stroke:#94a3b8;
    stroke-width:1.8;
    transition:.2s ease;
}

.ipd-account-trigger.is-open .ipd-account-chevron{
    transform:rotate(180deg);
}

.ipd-account-menu{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    width:300px;
    padding:9px;
    border:1px solid rgba(226,232,240,.9);
    border-radius:20px;
    background:rgba(255,255,255,.98);
    box-shadow:
        0 24px 60px rgba(15,23,42,.16),
        0 4px 12px rgba(15,23,42,.05);
    opacity:0;
    visibility:hidden;
    transform:translateY(-6px) scale(.98);
    transform-origin:top right;
    transition:.18s ease;
}

.ipd-account-menu.is-open{
    opacity:1;
    visibility:visible;
    transform:translateY(0) scale(1);
}

.ipd-account-menu-head{
    gap:11px;
    padding:10px;
}

.ipd-account-menu-head div{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.ipd-account-menu-head strong{
    font-size:13px;
    color:#111827;
}

.ipd-account-menu-head span:not(.ipd-account-menu-avatar){
    margin-top:3px;
    font-size:10px;
    color:#8491a5;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ipd-account-role{
    gap:7px;
    margin:1px 9px 9px;
    padding:7px 9px;
    border-radius:10px;
    font-size:10px;
    font-weight:700;
    color:#6d28d9;
    background:#f5f3ff;
}

.ipd-account-role span{
    width:7px;height:7px;border-radius:50%;background:#8b5cf6;
}

.ipd-account-menu-links{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.ipd-account-menu-links a{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:39px;
    padding:8px 10px;
    border-radius:11px;
    color:#475569;
    font-size:12px;
    font-weight:650;
    text-decoration:none;
    transition:.16s ease;
}

.ipd-account-menu-links a:hover{
    color:#6d28d9;
    background:#f7f4ff;
}

.ipd-mi{
    width:22px;
    text-align:center;
    color:#7466a8;
}

.ipd-menu-count{
    margin-left:auto;
    padding:2px 6px;
    border-radius:999px;
    color:white;
    background:#ef4444;
    font-size:9px;
}

.ipd-account-menu-separator{
    height:1px;
    margin:7px 4px;
    background:#eef2f7;
}

.ipd-account-menu-links .ipd-logout-link{
    color:#dc2626;
}

.ipd-account-menu-links .ipd-logout-link:hover{
    color:#b91c1c;
    background:#fff1f2;
}

.ipd-menu{
    width:42px;
    height:42px;
    display:none;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:4px;
    border:1px solid #ebe7f6;
    border-radius:13px;
    background:#fff;
}

.ipd-menu span{
    width:17px;height:2px;border-radius:2px;background:#475569;
}

@media(max-width:900px){

    .ipd-header-premium{
        min-height:70px;
        padding:10px 14px;
    }

    .ipd-menu{display:flex}

    .ipd-heading-block h1{font-size:17px}

    .ipd-kicker,
    .ipd-plan-badge{display:none}

    .ipd-account-trigger{
        min-width:auto;
        border:0;
        padding:3px;
        background:transparent;
        box-shadow:none;
    }

    .ipd-account-text,
    .ipd-account-chevron{display:none}

    .ipd-avatar{
        width:39px;height:39px;flex-basis:39px;
    }

    .ipd-account-menu{
        position:fixed;
        top:72px;
        left:12px;
        right:12px;
        width:auto;
    }
}


/* =============================================================
   INOVEDU R2C - PREMIUM PUBLISHING SIDEBAR
   ============================================================= */

.ipd-sidebar-premium{
    width:286px;
    min-width:286px;
    height:100vh;
    position:sticky;
    top:0;
    display:flex;
    flex-direction:column;
    padding:18px 15px 15px;
    overflow-y:auto;
    overflow-x:hidden;
    background:
        radial-gradient(circle at 15% 0%,rgba(139,92,246,.20),transparent 32%),
        linear-gradient(180deg,#21164c 0%,#19123d 47%,#120d30 100%);
    color:#fff;
    border-right:1px solid rgba(255,255,255,.05);
    box-shadow:18px 0 45px rgba(15,23,42,.06);
}

.ipd-sidebar-brand{
    min-height:58px;
    padding:0 6px 13px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.ipd-brand-link{
    display:flex;
    align-items:center;
    gap:11px;
    color:#fff;
    text-decoration:none;
}

.ipd-brand-mark{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:#7c3aed;
    background:#fff;
    box-shadow:0 9px 24px rgba(0,0,0,.16);
}

.ipd-brand-mark svg{
    width:23px;
    height:23px;
    fill:currentColor;
}

.ipd-brand-link > span:last-child{
    display:flex;
    flex-direction:column;
}

.ipd-brand-link strong{
    font-size:15px;
}

.ipd-brand-link small{
    margin-top:3px;
    color:#c2b8ef;
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.ipd-sidebar-close{
    display:none;
    width:34px;
    height:34px;
    border:0;
    border-radius:10px;
    color:#ede9fe;
    background:rgba(255,255,255,.07);
    font-size:22px;
}

.ipd-sidebar-account{
    display:flex;
    align-items:center;
    gap:11px;
    margin:4px 2px 20px;
    padding:13px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:17px;
    background:linear-gradient(
        135deg,
        rgba(255,255,255,.10),
        rgba(255,255,255,.045)
    );
}

.ipd-sidebar-avatar{
    width:43px;
    height:43px;
    flex:0 0 43px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:#fff;
    background:linear-gradient(135deg,#6366f1,#9333ea);
    font-size:14px;
    font-weight:900;
    box-shadow:0 9px 24px rgba(0,0,0,.2);
}

.ipd-sidebar-account-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.ipd-sidebar-account-copy strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px;
}

.ipd-sidebar-account-copy > span{
    margin-top:2px;
    color:#c3b8de;
    font-size:10px;
}

.ipd-sidebar-account-copy small{
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:5px;
    color:#c4b5fd;
    font-size:9px;
    font-weight:700;
}

.ipd-sidebar-account-copy small i{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#a78bfa;
    box-shadow:0 0 0 3px rgba(167,139,250,.12);
}

.ipd-premium-nav{
    flex:1;
}

.ipd-nav-label{
    margin:6px 9px 8px;
    color:#887db6;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.15em;
}

.ipd-nav-label-spaced{
    margin-top:18px;
}

.ipd-nav-item,
.ipd-nav-parent{
    width:100%;
    min-height:43px;
    margin:2px 0;
    padding:8px 10px;
    display:flex;
    align-items:center;
    gap:10px;
    border:0;
    border-radius:12px;
    color:#d4cfeb;
    background:transparent;
    text-decoration:none;
    font-family:inherit;
    font-size:11.5px;
    font-weight:650;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

.ipd-nav-item:hover,
.ipd-nav-parent:hover{
    color:#fff;
    background:rgba(255,255,255,.07);
}

.ipd-nav-item.is-active{
    color:#fff;
    background:linear-gradient(
        135deg,
        rgba(124,58,237,.34),
        rgba(79,70,229,.22)
    );
    box-shadow:inset 3px 0 #a78bfa;
}

.ipd-nav-icon{
    width:32px;
    height:32px;
    flex:0 0 32px;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:rgba(255,255,255,.055);
}

.ipd-nav-icon svg{
    width:16px;
    height:16px;
    fill:currentColor;
}

.ipd-nav-parent > span:nth-child(2){
    flex:1;
}

.ipd-nav-chevron{
    width:14px;
    height:14px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    transition:transform .18s ease;
}

.ipd-nav-group.is-open .ipd-nav-chevron{
    transform:rotate(180deg);
}

.ipd-nav-children{
    max-height:0;
    overflow:hidden;
    opacity:.25;
    transition:max-height .25s ease,opacity .18s ease;
}

.ipd-nav-group.is-open .ipd-nav-children{
    max-height:220px;
    opacity:1;
    padding-bottom:5px;
}

.ipd-nav-children a{
    position:relative;
    min-height:34px;
    margin-left:42px;
    padding:8px 12px 8px 17px;
    display:flex;
    align-items:center;
    gap:7px;
    border-radius:9px;
    color:#aba3cb;
    text-decoration:none;
    font-size:10.5px;
    font-weight:600;
    transition:.16s ease;
}

.ipd-nav-children a::before{
    content:"";
    position:absolute;
    left:4px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#655c8e;
}

.ipd-nav-children a:hover{
    color:#fff;
    background:rgba(255,255,255,.05);
}

.ipd-nav-children a.is-active{
    color:#fff;
    background:rgba(139,92,246,.14);
}

.ipd-nav-children a.is-active::before{
    background:#a78bfa;
    box-shadow:0 0 0 4px rgba(167,139,250,.12);
}

.ipd-new-pill{
    margin-left:auto;
    width:17px;
    height:17px;
    display:grid;
    place-items:center;
    border-radius:6px;
    background:rgba(167,139,250,.14);
    color:#c4b5fd;
    font-size:12px;
}

.ipd-ai-item{
    position:relative;
}

.ipd-ai-item b{
    margin-left:auto;
    padding:3px 6px;
    border-radius:7px;
    color:#ddd6fe;
    background:rgba(139,92,246,.20);
    font-size:8px;
    letter-spacing:.05em;
}

.ipd-sidebar-bottom{
    padding-top:14px;
}

.ipd-creator-card{
    padding:12px;
    border:1px solid rgba(196,181,253,.15);
    border-radius:15px;
    background:linear-gradient(
        145deg,
        rgba(124,58,237,.28),
        rgba(79,70,229,.15)
    );
}

.ipd-creator-spark{
    width:29px;
    height:29px;
    display:grid;
    place-items:center;
    border-radius:9px;
    color:#ede9fe;
    background:rgba(255,255,255,.10);
}

.ipd-creator-card div{
    margin:8px 0;
    display:flex;
    flex-direction:column;
}

.ipd-creator-card strong{
    font-size:11px;
}

.ipd-creator-card div span{
    margin-top:3px;
    color:#b7afd3;
    font-size:9px;
    line-height:1.4;
}

.ipd-creator-card a{
    display:flex;
    justify-content:center;
    padding:8px 10px;
    border-radius:9px;
    color:#ede9fe;
    background:rgba(255,255,255,.09);
    text-decoration:none;
    font-size:9px;
    font-weight:800;
}

.ipd-back-home{
    display:block;
    margin-top:11px;
    padding:7px;
    text-align:center;
    color:#8e83b8;
    font-size:9.5px;
    text-decoration:none;
}

.ipd-sidebar-overlay{
    display:none;
}

@media(max-width:900px){

    .ipd-sidebar-premium{
        position:fixed;
        z-index:1000;
        top:0;
        left:0;
        width:min(306px,86vw);
        min-width:0;
        transform:translateX(-105%);
        transition:transform .25s ease;
        box-shadow:25px 0 65px rgba(2,6,23,.38);
    }

    .ipd-sidebar-premium.is-open{
        transform:translateX(0);
    }

    .ipd-sidebar-close{
        display:grid;
        place-items:center;
    }

    .ipd-sidebar-overlay{
        position:fixed;
        inset:0;
        z-index:999;
        background:rgba(2,6,23,.48);
        backdrop-filter:blur(2px);
    }

    .ipd-sidebar-overlay.is-open{
        display:block;
    }
}


/* =============================================================
   INOVEDU R2C1
   FIX DOUBLE SIDEBAR OFFSET + IMPROVE READABILITY
   ============================================================= */

.ipd-shell{
    display:flex !important;
    width:100% !important;
    min-height:100vh !important;
    align-items:stretch !important;
}

.ipd-sidebar,
.ipd-sidebar-premium{
    flex:0 0 286px !important;
    width:286px !important;
    min-width:286px !important;
}

.ipd-main{
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;

    margin-left:0 !important;
    left:auto !important;
    transform:none !important;

    padding-left:0 !important;

    position:relative !important;
}

.ipd-header,
.ipd-header-premium{
    width:100% !important;
    margin-left:0 !important;
    left:auto !important;
}

.ipd-content{
    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;

    padding-left:32px !important;
    padding-right:32px !important;
}


/* =============================================================
   READABILITY
   ============================================================= */

.ipd-nav-item,
.ipd-nav-parent{
    min-height:48px !important;

    padding-top:9px !important;
    padding-bottom:9px !important;

    font-size:13.5px !important;
    line-height:1.35 !important;
    font-weight:650 !important;
}

.ipd-nav-icon{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
}

.ipd-nav-icon svg{
    width:17px !important;
    height:17px !important;
}

.ipd-nav-children a{
    min-height:38px !important;

    padding-top:9px !important;
    padding-bottom:9px !important;

    font-size:12.5px !important;
    line-height:1.4 !important;
}

.ipd-nav-label{
    margin-top:10px !important;
    margin-bottom:9px !important;

    font-size:9.5px !important;
    letter-spacing:.14em !important;
}

.ipd-sidebar-account-copy strong{
    font-size:13.5px !important;
    line-height:1.25 !important;
}

.ipd-sidebar-account-copy > span{
    font-size:11.5px !important;
}

.ipd-sidebar-account-copy small{
    font-size:10.5px !important;
}

.ipd-brand-link strong{
    font-size:16px !important;
}

.ipd-brand-link small{
    font-size:10.5px !important;
}

.ipd-creator-card strong{
    font-size:12.5px !important;
}

.ipd-creator-card div span{
    font-size:10.5px !important;
    line-height:1.45 !important;
}

.ipd-creator-card a{
    min-height:35px !important;
    align-items:center !important;

    font-size:10.5px !important;
}

.ipd-back-home{
    font-size:10.5px !important;
}

.ipd-ai-item b{
    font-size:9px !important;
}


/* Header readability */

.ipd-heading-block h1{
    font-size:23px !important;
}

.ipd-kicker{
    font-size:10.5px !important;
}

.ipd-account-text strong{
    font-size:13px !important;
}

.ipd-account-text small{
    font-size:11px !important;
}


/* Main page readability */

.ipd-content h1{
    line-height:1.2;
}

.ipd-content h2{
    line-height:1.25;
}

.ipd-content p,
.ipd-content label,
.ipd-content button,
.ipd-content input,
.ipd-content select,
.ipd-content textarea{
    line-height:1.5;
}


/* =============================================================
   RESPONSIVE
   ============================================================= */

@media(max-width:1100px){

    .ipd-sidebar,
    .ipd-sidebar-premium{
        flex-basis:270px !important;
        width:270px !important;
        min-width:270px !important;
    }

    .ipd-content{
        padding-left:24px !important;
        padding-right:24px !important;
    }
}

@media(max-width:900px){

    .ipd-sidebar,
    .ipd-sidebar-premium{
        width:min(320px,88vw) !important;
        min-width:0 !important;
        flex-basis:auto !important;
    }

    .ipd-main{
        width:100% !important;
        flex:1 1 100% !important;
        margin-left:0 !important;
        padding-left:0 !important;
    }

    .ipd-content{
        padding-left:16px !important;
        padding-right:16px !important;
    }

    .ipd-nav-item,
    .ipd-nav-parent{
        font-size:14px !important;
        min-height:50px !important;
    }

    .ipd-nav-children a{
        font-size:13px !important;
        min-height:40px !important;
    }
}


/* =============================================================
   INOVEDU R2D - LAYER SOVEREIGNTY
   Drawer > Overlay > Header > Content
   ============================================================= */

.ipd-shell{
    isolation:isolate;
}

.ipd-sidebar-premium{
    z-index:200 !important;
}

.ipd-header-premium{
    z-index:100 !important;
}

.ipd-account-menu{
    z-index:140 !important;
}

@media(max-width:900px){

    .ipd-sidebar-premium{
        z-index:5000 !important;
    }

    .ipd-sidebar-overlay{
        z-index:4900 !important;
    }

    .ipd-header-premium{
        z-index:100 !important;
    }

    .ipd-account-menu{
        z-index:150 !important;
    }
}


/* =============================================================
   INOVEDU R2D - PUBLISHING PREMIUM DASHBOARD
   ============================================================= */

.ipd-premium-dashboard{
    display:flex;
    flex-direction:column;
    gap:22px;
    padding-bottom:50px;
}

.ipd-dashboard-hero{
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:30px 32px;
    border-radius:24px;
    color:#fff;
    background:
        radial-gradient(circle at 85% 15%,rgba(192,132,252,.32),transparent 30%),
        linear-gradient(135deg,#24134f 0%,#4c1d95 52%,#6d28d9 100%);
    box-shadow:0 20px 45px rgba(76,29,149,.15);
}

.ipd-dashboard-hero::after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    right:-70px;
    bottom:-120px;
    border-radius:50%;
    background:rgba(255,255,255,.07);
}

.ipd-dashboard-hero > div{
    position:relative;
    z-index:2;
}

.ipd-dashboard-eyebrow{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    color:#6d28d9;
    background:#fff;
    font-size:9px;
    font-weight:900;
    letter-spacing:.1em;
}

.ipd-dashboard-hero h2{
    margin:14px 0 8px;
    color:#fff;
    font-size:29px;
}

.ipd-dashboard-hero p{
    margin:0;
    max-width:700px;
    color:#ded7f3;
    font-size:14px;
}

.ipd-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:20px;
}

.ipd-hero-btn{
    min-height:40px;
    padding:9px 14px;
    display:inline-flex;
    align-items:center;
    border-radius:11px;
    text-decoration:none;
    font-size:11.5px;
    font-weight:850;
}

.ipd-hero-btn-primary{
    color:#5521a4;
    background:#fff;
}

.ipd-hero-btn-soft{
    color:#fff;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.14);
}

.ipd-hero-btn-ai{
    color:#fff;
    background:linear-gradient(135deg,#7c3aed,#a855f7);
    border:1px solid rgba(255,255,255,.16);
}

.ipd-creator-summary{
    min-width:210px;
    padding:18px;
    border-radius:17px;
    border:1px solid rgba(255,255,255,.15);
    background:rgba(255,255,255,.09);
    backdrop-filter:blur(10px);
}

.ipd-creator-summary > span{
    color:#d8c7ff;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.1em;
}

.ipd-creator-summary strong{
    display:block;
    margin-top:7px;
    font-size:23px;
}

.ipd-creator-summary small{
    color:#cabce8;
    font-size:10px;
}

.ipd-creator-summary div{
    margin-top:13px;
    display:flex;
    align-items:center;
    gap:6px;
    color:#e8ddff;
    font-size:10px;
}

.ipd-creator-summary i{
    width:7px;height:7px;border-radius:50%;background:#a78bfa;
}

.ipd-kpi-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:13px;
}

.ipd-kpi{
    min-height:126px;
    padding:18px;
    display:flex;
    align-items:flex-start;
    gap:13px;
    border-radius:18px;
    border:1px solid rgba(226,232,240,.8);
    text-decoration:none;
    transition:.18s ease;
}

.ipd-kpi:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 30px rgba(15,23,42,.08);
}

.ipd-kpi-icon{
    width:40px;height:40px;flex:0 0 40px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:rgba(255,255,255,.72);
    font-size:17px;
}

.ipd-kpi > div:last-child{
    display:flex;
    flex-direction:column;
}

.ipd-kpi span{
    color:#6c7488;
    font-size:11px;
    font-weight:700;
}

.ipd-kpi strong{
    margin-top:4px;
    color:#191d2d;
    font-size:25px;
}

.ipd-kpi small{
    margin-top:4px;
    color:#898fa0;
    font-size:9.5px;
}

.ipd-kpi-indigo{background:#f0f1ff}
.ipd-kpi-green{background:#edfdf4}
.ipd-kpi-amber{background:#fff8e8}
.ipd-kpi-cyan{background:#ecfbff}
.ipd-kpi-purple{background:#f7efff}

.ipd-kpi-money{
    font-size:20px !important;
}

.ipd-dashboard-grid{
    display:grid;
    gap:17px;
}

.ipd-dashboard-grid-main{
    grid-template-columns:1.25fr .75fr;
}

.ipd-dashboard-grid-triple{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.ipd-dash-box{
    padding:22px;
    border:1px solid #e8e6f0;
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 25px rgba(15,23,42,.035);
}

.ipd-box-library{
    background:linear-gradient(145deg,#fff,#f8f6ff);
}

.ipd-box-pipeline{
    background:linear-gradient(145deg,#f5f1ff,#fff);
}

.ipd-box-business{
    background:linear-gradient(145deg,#effcf5,#fff);
}

.ipd-box-rights{
    background:linear-gradient(145deg,#fff8ed,#fff);
}

.ipd-box-distribution{
    background:linear-gradient(145deg,#eef9ff,#fff);
}

.ipd-box-head,
.ipd-box-head > div{
    display:flex;
    align-items:center;
}

.ipd-box-head{
    justify-content:space-between;
    gap:14px;
}

.ipd-box-head > div{
    gap:11px;
}

.ipd-box-icon{
    width:38px;height:38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:#f1edff;
}

.ipd-box-head h3,
.ipd-dash-box h3{
    margin:0;
    color:#191d2d;
    font-size:17px;
}

.ipd-box-head p{
    margin:3px 0 0;
    color:#8d91a0;
    font-size:10.5px;
}

.ipd-box-head a,
.ipd-dash-box > a{
    color:#7c3aed;
    font-size:11px;
    font-weight:800;
    text-decoration:none;
}

.ipd-empty-premium{
    margin-top:20px;
    min-height:125px;
    padding:18px;
    display:flex;
    align-items:center;
    gap:15px;
    border-radius:15px;
    background:rgba(255,255,255,.84);
    border:1px dashed #ddd6f2;
}

.ipd-empty-orb{
    width:44px;height:44px;flex:0 0 44px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#7c3aed;
    background:#f2edff;
    font-size:22px;
}

.ipd-empty-premium div{
    flex:1;
}

.ipd-empty-premium strong{
    color:#29233c;
    font-size:12.5px;
}

.ipd-empty-premium p{
    margin:4px 0 0;
    color:#817c8e;
    font-size:10.5px;
}

.ipd-empty-premium a{
    padding:8px 11px;
    border-radius:9px;
    color:#fff;
    background:#7c3aed;
    text-decoration:none;
    font-size:10px;
    font-weight:800;
}

.ipd-mini-badge{
    display:inline-flex;
    padding:5px 8px;
    border-radius:999px;
    color:#6d28d9;
    background:#efe8ff;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.08em;
}

.ipd-dash-box > h3{
    margin-top:11px;
}

.ipd-dash-box > p{
    color:#716c7d;
    font-size:11px;
}

.ipd-pipeline{
    margin-top:20px;
    display:flex;
    flex-direction:column;
    gap:5px;
}

.ipd-pipeline > div{
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px;
    border-radius:11px;
}

.ipd-pipeline > div.is-current{
    background:#fff;
    box-shadow:0 5px 15px rgba(76,29,149,.06);
}

.ipd-pipeline b{
    width:27px;height:27px;
    display:grid;
    place-items:center;
    border-radius:9px;
    color:#7c3aed;
    background:#ede9fe;
    font-size:10px;
}

.ipd-pipeline span{
    display:flex;
    flex-direction:column;
}

.ipd-pipeline strong{
    font-size:10.5px;
}

.ipd-pipeline small{
    color:#948ca5;
    font-size:8.5px;
}

.ipd-pipeline > i{
    width:1px;
    height:8px;
    margin-left:21px;
    background:#d8cfec;
}

.ipd-ai-studio-box{
    position:relative;
    overflow:hidden;
    min-height:235px;
    padding:27px;
    display:grid;
    grid-template-columns:1.1fr 1fr auto;
    align-items:center;
    gap:25px;
    border-radius:23px;
    color:#fff;
    background:
        radial-gradient(circle at 15% 10%,rgba(167,139,250,.35),transparent 32%),
        linear-gradient(135deg,#17113b,#312e81 52%,#581c87);
}

.ipd-ai-glow{
    position:absolute;
    width:260px;height:260px;
    right:-110px;top:-100px;
    border-radius:50%;
    background:rgba(216,180,254,.10);
}

.ipd-ai-main{
    position:relative;
    z-index:2;
    display:flex;
    gap:14px;
}

.ipd-ai-icon{
    width:44px;height:44px;flex:0 0 44px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:#fff;
    background:linear-gradient(135deg,#7c3aed,#c026d3);
    font-size:21px;
}

.ipd-ai-label{
    color:#c4b5fd;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.1em;
}

.ipd-ai-main h3{
    margin:8px 0;
    color:#fff;
    font-size:21px;
}

.ipd-ai-main p{
    margin:0;
    color:#c8c2de;
    font-size:11px;
}

.ipd-transform-flow{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:12px;
}

.ipd-source-chip,
.ipd-output-chips{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}

.ipd-source-chip b,
.ipd-output-chips span{
    padding:6px 8px;
    border-radius:8px;
    color:#e9e5f5;
    background:rgba(255,255,255,.08);
    font-size:8.5px;
}

.ipd-transform-arrow{
    color:#a78bfa;
}

.ipd-ai-studio-box > a{
    position:relative;
    z-index:2;
    padding:10px 13px;
    border-radius:10px;
    color:#4c1d95;
    background:#fff;
    white-space:nowrap;
    text-decoration:none;
    font-size:10px;
    font-weight:900;
}

.ipd-big-number{
    margin:17px 0 7px;
    color:#166534;
    font-size:28px;
    font-weight:850;
}

.ipd-big-number small{
    font-size:10px;
}

.ipd-rights-status{
    margin:17px 0;
    display:flex;
    align-items:center;
    gap:7px;
    color:#92400e;
    font-size:10px;
    font-weight:700;
}

.ipd-rights-status span{
    width:23px;height:23px;
    display:grid;
    place-items:center;
    border-radius:7px;
    background:#ffedd5;
}

.ipd-distribution-icons{
    margin:18px 0;
    display:flex;
    gap:7px;
}

.ipd-distribution-icons span{
    width:34px;height:34px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#eaf7ff;
}

.ipd-quick-grid{
    margin-top:15px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}

.ipd-quick-grid a{
    min-height:92px;
    padding:14px;
    display:flex;
    flex-direction:column;
    border:1px solid #ebe8f1;
    border-radius:14px;
    color:#29233c;
    background:#fcfbfe;
    text-decoration:none;
    transition:.18s ease;
}

.ipd-quick-grid a:hover{
    transform:translateY(-2px);
    border-color:#d9cdfa;
    background:#f8f5ff;
}

.ipd-quick-grid a > span{
    color:#7c3aed;
    font-size:18px;
}

.ipd-quick-grid strong{
    margin-top:7px;
    font-size:11.5px;
}

.ipd-quick-grid small{
    margin-top:3px;
    color:#918a9e;
    font-size:9.5px;
}

@media(max-width:1250px){

    .ipd-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .ipd-dashboard-grid-triple{
        grid-template-columns:1fr 1fr;
    }

    .ipd-ai-studio-box{
        grid-template-columns:1fr 1fr;
    }

    .ipd-ai-studio-box > a{
        width:max-content;
    }

}

@media(max-width:900px){

    .ipd-dashboard-hero{
        padding:22px;
        flex-direction:column;
        align-items:flex-start;
    }

    .ipd-dashboard-hero h2{
        font-size:24px;
    }

    .ipd-creator-summary{
        width:100%;
    }

    .ipd-kpi-grid{
        grid-template-columns:1fr 1fr;
    }

    .ipd-dashboard-grid-main,
    .ipd-dashboard-grid-triple,
    .ipd-ai-studio-box{
        grid-template-columns:1fr;
    }

    .ipd-quick-grid{
        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:560px){

    .ipd-kpi-grid,
    .ipd-quick-grid{
        grid-template-columns:1fr;
    }

    .ipd-empty-premium{
        align-items:flex-start;
        flex-wrap:wrap;
    }

    .ipd-transform-flow{
        align-items:flex-start;
        flex-direction:column;
    }

    .ipd-transform-arrow{
        transform:rotate(90deg);
    }

}


/* =============================================================
   R2E - PREMIUM TYPOGRAPHY / READABILITY
   ============================================================= */

/* Hero */
.ipd-dashboard-eyebrow{
    font-size:11px !important;
}

.ipd-dashboard-hero p{
    font-size:15px !important;
    line-height:1.6 !important;
}

.ipd-hero-btn{
    font-size:13px !important;
}

.ipd-creator-summary > span{
    font-size:10.5px !important;
}

.ipd-creator-summary small,
.ipd-creator-summary div{
    font-size:12px !important;
}

/* KPI cards */
.ipd-kpi span{
    font-size:13px !important;
}

.ipd-kpi strong{
    font-size:27px !important;
}

.ipd-kpi small{
    font-size:11.5px !important;
    line-height:1.45 !important;
}

.ipd-kpi-money{
    font-size:22px !important;
}

/* Main cards */
.ipd-box-head h3,
.ipd-dash-box h3{
    font-size:18px !important;
}

.ipd-box-head p{
    font-size:12.5px !important;
    line-height:1.5 !important;
}

.ipd-box-head a,
.ipd-dash-box > a{
    font-size:12.5px !important;
}

/* Empty states */
.ipd-empty-premium strong{
    font-size:14px !important;
}

.ipd-empty-premium p{
    font-size:12.5px !important;
    line-height:1.55 !important;
}

.ipd-empty-premium a{
    font-size:12px !important;
}

/* Badges */
.ipd-mini-badge{
    font-size:10px !important;
}

/*
 * THIS FIXES THE TEXTS VISIBLE AS TOO SMALL
 * ON THE SCREENSHOT:
 * "Suivez ventes..."
 * "Gérez propriété intellectuelle..."
 * "Organisez les publications..."
 */
.ipd-dash-box > p{
    font-size:13px !important;
    line-height:1.65 !important;
}

/* Publishing workflow */
.ipd-pipeline strong{
    font-size:12.5px !important;
}

.ipd-pipeline small{
    font-size:11px !important;
    line-height:1.4 !important;
}

/* AI Content Studio */
.ipd-ai-label{
    font-size:10.5px !important;
}

.ipd-ai-main h3{
    font-size:22px !important;
}

.ipd-ai-main p{
    font-size:13px !important;
    line-height:1.6 !important;
}

.ipd-source-chip b,
.ipd-output-chips span{
    font-size:10.5px !important;
}

.ipd-ai-studio-box > a{
    font-size:12px !important;
}

/* Rights */
.ipd-rights-status{
    font-size:12px !important;
}

/*
 * QUICK ACTIONS
 *
 * Fixes:
 * "Démarrer un ouvrage"
 * "PDF, DOCX ou EPUB"
 * "Transformer le contenu"
 * "Droits & provenance"
 */
.ipd-quick-grid strong{
    font-size:13.5px !important;
}

.ipd-quick-grid small{
    font-size:11.5px !important;
    line-height:1.45 !important;
}

/* Sidebar secondary text */
.ipd-sidebar-premium small,
.ipd-sidebar-premium .ipd-nav-subtitle{
    font-size:11.5px !important;
    line-height:1.45 !important;
}

/* Improve general text rendering */
.ipd-premium-dashboard,
.itd-premium-dashboard{
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}


/* ============================================================
   INOVEDU R2G - RESPONSIVE + READABILITY CONTRACT
   ============================================================ */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

.ipd-body {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
    font-size: 16px;
}

.ipd-shell {
    width: 100%;
    max-width: 100vw;
    min-width: 0;
    overflow-x: clip;
}

.ipd-main {
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
}

.ipd-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow-x: hidden;
}

.ipd-content *,
.ipd-main *,
.ipd-shell * {
    box-sizing: border-box;
}

.ipd-content > *,
.ipd-dash-grid > *,
.ipd-kpi-grid > *,
.ipd-quick-grid > * {
    min-width: 0;
    max-width: 100%;
}

.ipd-content p,
.ipd-content small,
.ipd-content span,
.ipd-content strong,
.ipd-content a,
.ipd-content h1,
.ipd-content h2,
.ipd-content h3 {
    overflow-wrap: anywhere;
}

/* ---------- Readability ---------- */

.ipd-header-title,
.ipd-page-title {
    font-size: clamp(25px, 2vw, 32px);
    line-height: 1.15;
}

.ipd-sidebar-premium {
    font-size: 15px;
}

.ipd-sidebar-premium a,
.ipd-sidebar-premium button {
    font-size: 15px;
}

.ipd-card h2,
.ipd-card h3,
.ipd-dash-card h2,
.ipd-dash-card h3 {
    font-size: 19px;
    line-height: 1.3;
}

.ipd-card p,
.ipd-dash-card p,
.ipd-dash-box > p {
    font-size: 14px;
    line-height: 1.6;
}

.ipd-kpi-label {
    font-size: 14px;
}

.ipd-kpi-value,
.ipd-kpi strong {
    font-size: 29px;
}

.ipd-quick-grid strong {
    font-size: 15px;
    line-height: 1.35;
}

.ipd-quick-grid small {
    font-size: 13px;
    line-height: 1.45;
}

.ipd-hero p {
    font-size: 16px;
    line-height: 1.6;
}

.ipd-hero a,
.ipd-hero button {
    font-size: 14px;
}

.ipd-ai-panel h3 {
    font-size: 23px;
}

.ipd-ai-panel p {
    font-size: 14px;
    line-height: 1.6;
}

/* ---------- Fluid grids ---------- */

.ipd-dash-grid,
.ipd-kpi-grid,
.ipd-quick-grid {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 1400px) {

    .ipd-content {
        padding-left: 20px;
        padding-right: 20px;
    }

    .ipd-kpi-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ipd-quick-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1100px) {

    .ipd-dash-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ipd-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {

    .ipd-main,
    .ipd-content {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .ipd-content {
        padding-left: 16px;
        padding-right: 16px;
        padding-bottom: 90px;
    }

    .ipd-dash-grid,
    .ipd-kpi-grid,
    .ipd-quick-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {

    .ipd-content {
        padding-left: 12px;
        padding-right: 12px;
    }

    .ipd-header-title,
    .ipd-page-title {
        font-size: 24px;
    }

    .ipd-card h2,
    .ipd-card h3,
    .ipd-dash-card h2,
    .ipd-dash-card h3 {
        font-size: 18px;
    }

    .ipd-card p,
    .ipd-dash-card p,
    .ipd-dash-box > p {
        font-size: 14px;
    }

    .ipd-quick-grid strong {
        font-size: 15px;
    }

    .ipd-quick-grid small {
        font-size: 13px;
    }
}

/* ============================================================
   INOVEDU R3A - PUBLISHING PREMIUM WELCOME
   ============================================================ */

.ipd-welcome{
    width:100%;
    max-width:1500px;
    margin:0 auto;
    padding:18px 4px 48px;
}

.ipd-welcome-hero{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
    gap:55px;
    align-items:center;
    min-height:590px;
    padding:64px;
    border-radius:32px;
    background:
        radial-gradient(circle at 88% 15%,rgba(196,181,253,.22),transparent 30%),
        linear-gradient(135deg,#211044 0%,#3b176e 50%,#5b21b6 100%);
    color:#fff;
    box-shadow:0 30px 80px rgba(63,23,110,.19);
}

.ipd-welcome-copy{
    position:relative;
    z-index:2;
}

.ipd-welcome-badge{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(255,255,255,.09);
    font-size:13px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.ipd-welcome-copy h1{
    max-width:760px;
    margin:22px 0 20px;
    color:#fff;
    font-size:clamp(40px,4.7vw,68px);
    line-height:1.02;
    letter-spacing:-.045em;
}

.ipd-welcome-copy h1 span{
    display:block;
    color:#c4b5fd;
}

.ipd-welcome-lead{
    max-width:690px;
    margin:0;
    color:#ede9fe;
    font-size:18px !important;
    line-height:1.72 !important;
}

.ipd-welcome-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:32px;
}

.ipd-welcome-primary,
.ipd-welcome-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 22px;
    border-radius:14px;
    font-size:15px !important;
    font-weight:800;
    text-decoration:none;
}

.ipd-welcome-primary{
    gap:9px;
    background:#fff;
    color:#4c1d95;
}

.ipd-welcome-secondary{
    color:#fff;
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.07);
}

.ipd-welcome-visual{
    position:relative;
    z-index:2;
}

.ipd-book-scene{
    position:relative;
    min-height:440px;
}

.ipd-book-cover{
    position:absolute;
    left:25px;
    top:15px;
    width:235px;
    height:335px;
    padding:30px 25px;
    border-radius:9px 19px 19px 9px;
    background:
        linear-gradient(160deg,#faf5ff,#ddd6fe);
    color:#28104d;
    box-shadow:
        -12px 15px 35px rgba(0,0,0,.18),
        inset 8px 0 15px rgba(76,29,149,.08);
    transform:rotate(-6deg);
}

.ipd-book-cover:after{
    content:"";
    position:absolute;
    left:12px;
    top:0;
    bottom:0;
    width:1px;
    background:rgba(76,29,149,.15);
}

.ipd-book-cover small{
    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
    color:#7c3aed;
}

.ipd-book-cover strong{
    display:block;
    margin-top:46px;
    font-size:28px;
    line-height:1.02;
    letter-spacing:-.04em;
}

.ipd-book-cover > span{
    position:absolute;
    bottom:28px;
    left:25px;
    font-size:12px;
    font-weight:700;
}

.ipd-book-tools{
    position:absolute;
    right:0;
    top:58px;
    width:255px;
    padding:12px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:21px;
    background:rgba(255,255,255,.96);
    color:#111827;
    box-shadow:0 24px 50px rgba(0,0,0,.22);
}

.ipd-book-tools > div{
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:11px;
    padding:12px;
}

.ipd-book-tools > div + div{
    border-top:1px solid #ede9fe;
}

.ipd-book-tools span{
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:35px;
    height:35px;
    border-radius:11px;
    background:#f5f3ff;
    color:#7c3aed;
}

.ipd-book-tools strong,
.ipd-book-tools small{
    display:block;
}

.ipd-book-tools strong{
    font-size:12px;
}

.ipd-book-tools small{
    margin-top:2px;
    color:#7c8293;
    font-size:10px;
}

.ipd-ai-transform{
    position:absolute;
    right:15px;
    bottom:5px;
    width:320px;
    padding:21px;
    border-radius:19px;
    background:#111827;
    box-shadow:0 25px 50px rgba(0,0,0,.3);
}

.ipd-ai-transform > span{
    color:#c4b5fd;
    font-size:10px;
    font-weight:900;
}

.ipd-ai-transform strong{
    display:block;
    margin:10px 0 14px;
    color:#fff;
    font-size:15px;
    line-height:1.4;
}

.ipd-ai-transform div{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
}

.ipd-ai-transform div span{
    padding:5px 8px;
    border-radius:8px;
    background:#272f40;
    color:#ddd6fe;
    font-size:9px;
}

.ipd-welcome-trust{
    display:flex;
    gap:19px;
    flex-wrap:wrap;
    margin-top:29px;
    color:#ddd6fe;
    font-size:13px;
    font-weight:700;
}

.ipd-welcome-section{
    padding:82px 14px 30px;
}

.ipd-welcome-section-head{
    max-width:800px;
    margin:0 auto 38px;
    text-align:center;
}

.ipd-welcome-section-head > span,
.ipd-welcome-bottom > div > span{
    color:#7c3aed;
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
}

.ipd-welcome-section-head h2{
    margin:12px 0;
    font-size:clamp(30px,3vw,44px);
    line-height:1.1;
    letter-spacing:-.035em;
}

.ipd-welcome-section-head p{
    color:#64748b;
    font-size:16px !important;
    line-height:1.65 !important;
}

.ipd-benefit-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:17px;
}

.ipd-benefit-card{
    min-width:0;
    padding:27px;
    border:1px solid #ede9fe;
    border-radius:22px;
    background:#fff;
    box-shadow:0 10px 28px rgba(15,23,42,.045);
}

.ipd-benefit-icon{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    border-radius:15px;
    background:#f5f3ff;
    color:#7c3aed;
    font-size:20px;
}

.ipd-benefit-card h3{
    margin:19px 0 8px;
    font-size:18px;
}

.ipd-benefit-card p{
    margin:0;
    color:#64748b;
    font-size:14px !important;
    line-height:1.65 !important;
}

.ipd-transform-story{
    display:grid;
    grid-template-columns:1fr auto 1.3fr auto 1.3fr;
    gap:16px;
    align-items:center;
    margin:52px 14px;
    padding:32px;
    border-radius:24px;
    background:#faf9ff;
    border:1px solid #ede9fe;
}

.ipd-transform-source,
.ipd-transform-engine{
    padding:18px;
    border-radius:17px;
    background:#fff;
}

.ipd-transform-source span,
.ipd-transform-source strong,
.ipd-transform-source small,
.ipd-transform-engine span,
.ipd-transform-engine strong,
.ipd-transform-engine small{
    display:block;
}

.ipd-transform-source > span,
.ipd-transform-engine > span{
    color:#7c3aed;
    font-size:11px;
    font-weight:900;
}

.ipd-transform-source strong,
.ipd-transform-engine strong{
    margin:5px 0;
    font-size:14px;
}

.ipd-transform-source small,
.ipd-transform-engine small{
    color:#64748b;
    font-size:11px;
}

.ipd-transform-arrow{
    color:#a78bfa;
    font-size:23px;
}

.ipd-transform-products{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
}

.ipd-transform-products span{
    padding:9px 11px;
    border-radius:11px;
    background:#ede9fe;
    color:#5b21b6;
    font-size:11px;
    font-weight:800;
}

.ipd-welcome-bottom{
    display:flex;
    justify-content:space-between;
    gap:30px;
    align-items:center;
    margin:55px 14px 10px;
    padding:38px 42px;
    border-radius:25px;
    background:#f5f3ff;
}

.ipd-welcome-bottom h2{
    margin:8px 0;
    font-size:28px;
}

.ipd-welcome-bottom p{
    margin:0;
    color:#64748b;
    font-size:14px !important;
}

.ipd-welcome-bottom > a{
    flex:0 0 auto;
    padding:15px 20px;
    border-radius:13px;
    background:#6d28d9;
    color:#fff;
    font-size:14px;
    font-weight:800;
    text-decoration:none;
}

@media(max-width:1180px){
    .ipd-welcome-hero{
        grid-template-columns:1fr;
        padding:48px;
    }

    .ipd-book-scene{
        max-width:650px;
    }
}

@media(max-width:840px){
    .ipd-benefit-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .ipd-transform-story{
        grid-template-columns:1fr;
    }

    .ipd-transform-arrow{
        transform:rotate(90deg);
        text-align:center;
    }

    .ipd-welcome-bottom{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:600px){
    .ipd-welcome{
        padding-top:5px;
    }

    .ipd-welcome-hero{
        padding:30px 21px;
        border-radius:22px;
    }

    .ipd-welcome-copy h1{
        font-size:38px;
    }

    .ipd-welcome-lead{
        font-size:16px !important;
    }

    .ipd-benefit-grid{
        grid-template-columns:1fr;
    }

    .ipd-welcome-section{
        padding:55px 2px 20px;
    }

    .ipd-book-scene{
        min-height:590px;
    }

    .ipd-book-cover{
        left:20px;
    }

    .ipd-book-tools{
        top:300px;
        right:5px;
    }

    .ipd-ai-transform{
        width:calc(100% - 20px);
        right:10px;
    }

    .ipd-welcome-bottom{
        margin-left:0;
        margin-right:0;
        padding:27px 23px;
    }
}

/* ============================================================
   INOVEDU R3B - PUBLISHER PUBLIC REGISTRATION
   ============================================================ */

.ipd-register-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 22px;
    border-radius:14px;
    background:#c4b5fd;
    color:#3b176e;
    font-size:15px;
    font-weight:900;
    text-decoration:none;
    transition:.2s ease;
}

.ipd-register-cta:hover{
    transform:translateY(-2px);
    background:#ddd6fe;
}

.ipd-register-section{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
    gap:48px;
    align-items:center;
    margin:62px 14px 20px;
    padding:46px;
    border:1px solid #ede9fe;
    border-radius:28px;
    background:
        radial-gradient(
            circle at 0 0,
            rgba(124,58,237,.12),
            transparent 35%
        ),
        #fbfaff;
}

.ipd-register-eyebrow{
    color:#7c3aed;
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
}

.ipd-register-copy h2{
    margin:12px 0 15px;
    font-size:clamp(30px,3vw,44px);
    line-height:1.08;
    letter-spacing:-.035em;
}

.ipd-register-copy > p{
    max-width:560px;
    color:#64748b;
    font-size:16px !important;
    line-height:1.7 !important;
}

.ipd-register-points{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:25px;
}

.ipd-register-points span{
    padding:12px 14px;
    border-radius:12px;
    background:#fff;
    color:#4c1d95;
    font-size:13px;
    font-weight:700;
    border:1px solid #ede9fe;
}

.ipd-role-register-form{
    display:grid;
    gap:16px;
    padding:28px;
    border-radius:22px;
    background:#fff;
    border:1px solid #ede9fe;
    box-shadow:0 18px 45px rgba(45,20,85,.09);
}

.ipd-form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px;
}

.ipd-role-register-form label > span{
    display:block;
    margin-bottom:7px;
    color:#334155;
    font-size:13px;
    font-weight:800;
}

.ipd-role-register-form input[type="text"],
.ipd-role-register-form input[type="email"],
.ipd-role-register-form input[type="tel"],
.ipd-role-register-form input[type="password"]{
    width:100%;
    min-width:0;
    height:49px;
    padding:0 14px;
    border:1px solid #ddd6fe;
    border-radius:12px;
    outline:none;
    background:#fff;
    color:#0f172a;
    font-size:15px;
}

.ipd-role-register-form input:focus{
    border-color:#8b5cf6;
    box-shadow:0 0 0 4px rgba(124,58,237,.10);
}

.ipd-register-check{
    display:grid !important;
    grid-template-columns:auto 1fr;
    gap:9px;
    align-items:start;
}

.ipd-register-check input{
    margin-top:3px;
}

.ipd-register-check span{
    margin:0 !important;
    color:#64748b !important;
    font-size:12px !important;
    font-weight:500 !important;
    line-height:1.5;
}

.ipd-register-submit{
    min-height:52px;
    border:0;
    border-radius:13px;
    background:#6d28d9;
    color:#fff;
    font-size:15px;
    font-weight:900;
    cursor:pointer;
}

.ipd-register-submit:disabled{
    opacity:.65;
    cursor:wait;
}

.ipd-register-status{
    min-height:20px;
    font-size:13px;
    font-weight:700;
}

.ipd-register-status.is-success{
    color:#047857;
}

.ipd-register-status.is-error{
    color:#b91c1c;
}

.ipd-register-login{
    margin:0 !important;
    text-align:center;
    color:#64748b;
    font-size:13px !important;
}

.ipd-register-login a{
    color:#7c3aed;
    font-weight:800;
}

@media(max-width:950px){
    .ipd-register-section{
        grid-template-columns:1fr;
        padding:34px;
    }
}

@media(max-width:600px){
    .ipd-register-section{
        margin-left:0;
        margin-right:0;
        padding:25px 20px;
        border-radius:22px;
    }

    .ipd-form-grid,
    .ipd-register-points{
        grid-template-columns:1fr;
    }

    .ipd-role-register-form{
        padding:20px;
    }
}

/* ============================================================
   INOVEDU R3C - PUBLISHING PUBLIC WELCOME SITE SHELL
   ============================================================ */

body:not(.ipd-body) .ipd-welcome{
    width:min(100% - 32px,1500px);
    max-width:1500px;
    margin:0 auto;
    padding-top:34px;
}

body:not(.ipd-body) .ipd-welcome *{
    box-sizing:border-box;
}

@media(max-width:700px){
    body:not(.ipd-body) .ipd-welcome{
        width:min(100% - 20px,1500px);
        padding-top:20px;
    }
}
