
:root{
 --wwaed-green:#00ff01;
 --wwaed-black:#000000;
 --wwaed-white:#ffffff;
 --wwaed-grey:#f3f5f4;
 --wwaed-mid:#6b746f;
 --wwaed-radius:20px;
 --wwaed-shadow:0 12px 30px rgba(0,0,0,.08);
}
.wwaed-portal-shell{max-width:1180px;margin:0 auto;padding:22px;font-family:Arial,Helvetica,sans-serif;color:var(--wwaed-black)}
.wwaed-portal-shell *{box-sizing:border-box}
.wwaed-portal-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0 22px;border-bottom:1px solid #e5e5e5}
.wwaed-portal-header img{width:190px;max-height:88px;object-fit:contain}
.wwaed-portal-header nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.wwaed-portal-header nav a{display:inline-flex;padding:10px 14px;border-radius:999px;color:#000;text-decoration:none;font-weight:700}
.wwaed-portal-header nav a:hover{background:#ebffeb}
.wwaed-portal-header .wwaed-admin-link{background:#000;color:#fff}
.wwaed-staging-banner,.wwaed-preview-banner{padding:10px 14px;border-radius:14px;margin-bottom:12px;text-align:center;font-weight:800;letter-spacing:.04em}
.wwaed-staging-banner{background:#ffb300;color:#000}
.wwaed-preview-banner{background:#000;color:#fff}.wwaed-preview-banner a{color:#00ff01;margin-left:15px}
.wwaed-portal-hero{margin:30px 0;background:linear-gradient(110deg,#000 0%,#101010 62%,#182018 100%);color:#fff;border-radius:28px;padding:54px 48px;box-shadow:var(--wwaed-shadow);overflow:hidden;position:relative}
.wwaed-portal-hero:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:#00ff01;opacity:.11;right:-80px;top:-120px}
.wwaed-eyebrow{display:block;color:#00ff01;font-weight:800;letter-spacing:.12em;font-size:12px;margin-bottom:10px}
.wwaed-portal-hero h1,.wwaed-dashboard-welcome h1{font-size:46px;line-height:1.06;margin:0 0 12px;color:#fff}
.wwaed-portal-hero h1 em{font-style:normal;color:#00ff01}
.wwaed-portal-hero h2{font-size:21px;color:#fff;margin:0 0 12px;font-weight:700}
.wwaed-portal-hero p{font-size:17px;line-height:1.6;max-width:750px;margin:0;color:#e8ece9}
.wwaed-public-route-grid,.wwaed-module-grid,.wwaed-admin-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.wwaed-public-route-card,.wwaed-module-card,.wwaed-info-card,.wwaed-signin-card,.wwaed-admin-card,.wwaed-module-admin-card,.wwaed-core-form,.wwaed-portal-profile,.wwaed-workspace-module{background:#fff;border:1px solid #dfe4e1;border-radius:var(--wwaed-radius);padding:24px;box-shadow:var(--wwaed-shadow)}
.wwaed-public-route-card{border-top:6px solid #00ff01;display:flex;flex-direction:column;min-height:290px}
.wwaed-public-route-card.dark{background:#000;color:#fff;border-color:#000;border-top-color:#00ff01}
.wwaed-public-route-card h2{font-size:26px;margin:8px 0 3px}.wwaed-public-route-card h3{font-size:15px;color:#52605a;margin:0 0 14px;text-transform:uppercase;letter-spacing:.04em}.wwaed-public-route-card.dark h3{color:#b7c2bc}
.wwaed-public-route-card p{line-height:1.55;flex:1}
.wwaed-route-mark{display:block;width:44px;height:5px;border-radius:999px;background:#00ff01}
.wwaed-primary-button{display:inline-flex;justify-content:center;align-items:center;background:#00ff01;color:#000!important;text-decoration:none!important;font-weight:900;border-radius:999px;padding:12px 18px;min-height:44px;border:2px solid #00ff01}
.wwaed-primary-button:hover{background:#000;color:#00ff01!important}
.dark .wwaed-primary-button:hover{background:#fff;color:#000!important}
.wwaed-public-benefits{background:#f2f5f3;border-radius:24px;padding:28px;margin:28px 0}
.wwaed-public-benefits h2{margin-top:0}
.wwaed-benefit-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.wwaed-benefit-row div{background:#fff;border-radius:16px;padding:18px;border-left:5px solid #00ff01}.wwaed-benefit-row strong,.wwaed-benefit-row span{display:block}.wwaed-benefit-row span{margin-top:6px;color:#535d58;line-height:1.45}
.wwaed-signin-card{max-width:560px;margin:30px auto}.wwaed-signin-card input[type=text],.wwaed-signin-card input[type=password]{width:100%;border-radius:12px;padding:10px}
.wwaed-my-dashboard{margin:28px 0}
.wwaed-dashboard-welcome{background:#000;color:#fff;border-radius:26px;padding:32px;display:flex;justify-content:space-between;gap:25px;align-items:center}
.wwaed-dashboard-welcome p{color:#d9dfdc;max-width:720px}
.wwaed-admin-switch{background:#fff;color:#000!important;text-decoration:none!important;border-radius:18px;padding:16px 18px;min-width:245px;border:3px solid #00ff01}.wwaed-admin-switch strong,.wwaed-admin-switch span{display:block}.wwaed-admin-switch span{font-size:12px;margin-top:4px;color:#59615d}
.wwaed-person-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.wwaed-person-strip div{background:#f3f5f4;border-radius:16px;padding:16px}.wwaed-person-strip span{display:block;font-size:12px;text-transform:uppercase;color:#67716c}.wwaed-person-strip strong{display:block;margin-top:4px;font-size:17px}
.wwaed-module-card{display:flex;flex-direction:column;min-height:220px;border-top:5px solid #000}.wwaed-module-card.state-live{border-top-color:#00ff01}.wwaed-module-card.state-testing{border-top-color:#ffb300}.wwaed-module-card.state-coming_soon{opacity:.82}
.wwaed-module-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.wwaed-module-top h2{margin:0}.wwaed-module-top span{font-size:11px;font-weight:800;border-radius:999px;padding:6px 9px;background:#eee}.state-live .wwaed-module-top span{background:#d9ffd9}.state-testing .wwaed-module-top span{background:#fff0c9}
.wwaed-module-card p{flex:1;line-height:1.5}.wwaed-coming-soon{font-weight:800;padding:11px 14px;border-radius:12px;background:#f2f3f2;text-align:center}
.wwaed-admin-mode-banner{margin:10px 20px 0 2px!important;background:#000;color:#fff;border-left:8px solid #00ff01;border-radius:12px;padding:13px 16px;display:flex;align-items:center;gap:18px}.wwaed-admin-mode-banner strong{font-size:15px;letter-spacing:.05em}.wwaed-admin-mode-banner span{background:#00ff01;color:#000;padding:5px 9px;border-radius:999px;font-weight:800}.wwaed-admin-mode-banner a{margin-left:auto;color:#00ff01;font-weight:800}
.wwaed-core-admin .wwaed-admin-intro{max-width:800px;background:#f1f3f2;border-left:5px solid #00ff01;border-radius:0 14px 14px 0;padding:14px}
.wwaed-core-admin .wwaed-core-toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:18px 0}.wwaed-core-admin .wwaed-core-toolbar form{display:flex;gap:8px;flex-wrap:wrap}
.wwaed-table-scroll{overflow:auto}.wwaed-person-summary{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin:18px 0}.wwaed-person-summary>div{background:#111;color:#fff;border-top:4px solid var(--wwaed-green);border-radius:16px;padding:16px}.wwaed-person-summary span{display:block;color:#bbb;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.wwaed-person-summary strong{font-size:18px}
.wwaed-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wwaed-grid2 label{font-weight:600}.wwaed-grid2 input,.wwaed-grid2 select,.wwaed-grid2 textarea{width:100%;margin-top:6px;border-radius:10px}.wwaed-grid2 .full{grid-column:1/-1}
.wwaed-portal-profile dl{display:grid;grid-template-columns:160px 1fr;gap:8px 16px}.wwaed-portal-profile dt{font-weight:700}
.wwaed-module-admin-list{display:grid;gap:16px}.wwaed-module-admin-card{display:grid;grid-template-columns:1fr 220px;gap:18px;align-items:start}.wwaed-module-admin-card h2{margin-top:0}.wwaed-module-admin-card select{width:100%}.wwaed-module-admin-card details{grid-column:1/-1}
.wwaed-tester-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px}.wwaed-tester-grid label{background:#f4f5f4;padding:9px;border-radius:10px}.wwaed-tester-grid small{color:#666}
.wwaed-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wwaed-permission-card{display:flex;gap:10px;border:1px solid #dfe4e1;border-radius:14px;padding:14px}.wwaed-permission-card span,.wwaed-permission-card strong,.wwaed-permission-card small{display:block}.wwaed-permission-card small{margin-top:4px;color:#5f6964}
.wwaed-admin-card h2{margin-top:0}.wwaed-admin-card{border-top:5px solid #00ff01}
@media(max-width:900px){
 .wwaed-public-route-grid,.wwaed-module-grid,.wwaed-admin-dashboard-grid{grid-template-columns:1fr 1fr}
 .wwaed-benefit-row{grid-template-columns:1fr 1fr}
 .wwaed-dashboard-welcome{display:block}.wwaed-admin-switch{display:block;margin-top:18px}
}
@media(max-width:700px){
 .wwaed-portal-shell{padding:12px}
 .wwaed-portal-header{align-items:flex-start}.wwaed-portal-header img{width:140px}.wwaed-portal-header nav{justify-content:flex-end}
 .wwaed-portal-hero{padding:34px 24px;border-radius:20px}.wwaed-portal-hero h1,.wwaed-dashboard-welcome h1{font-size:34px}
 .wwaed-public-route-grid,.wwaed-module-grid,.wwaed-admin-dashboard-grid,.wwaed-benefit-row,.wwaed-person-strip,.wwaed-person-summary,.wwaed-grid2,.wwaed-module-admin-card,.wwaed-permission-grid,.wwaed-tester-grid{grid-template-columns:1fr}
 .wwaed-grid2 .full,.wwaed-module-admin-card details{grid-column:auto}
 .wwaed-portal-profile dl{grid-template-columns:1fr}
 .wwaed-admin-mode-banner{margin-right:10px!important;flex-wrap:wrap}.wwaed-admin-mode-banner a{margin-left:0}
}


/* =========================================================
   WWAED Portal Core v1.1.1 – Professional UI / mobile pass
   ========================================================= */

/* Graphic-inspired public hero */
.wwaed-graphic-hero{
    min-height:470px;
    padding:62px 260px 58px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    isolation:isolate;
    border:2px solid #00ff01;
    background:
        radial-gradient(circle at 50% 110%, rgba(0,255,1,.14), transparent 42%),
        linear-gradient(115deg,#000 0%,#050505 48%,#000 100%);
}
.wwaed-graphic-hero:after{
    width:520px;
    height:520px;
    right:50%;
    transform:translateX(50%);
    top:-390px;
    opacity:.08;
}
.wwaed-hero-content{
    position:relative;
    z-index:4;
    max-width:760px;
}
.wwaed-hero-horse,
.wwaed-hero-skull{
    position:absolute;
    z-index:2;
    pointer-events:none;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    filter:saturate(.75) contrast(1.06);
}
.wwaed-hero-horse{
    left:4px;
    bottom:0;
    width:280px;
    height:390px;
    background-image:url('portal-hero-horse.jpg');
    background-position:left bottom;
}
.wwaed-hero-skull{
    right:12px;
    top:65px;
    width:300px;
    height:230px;
    background-image:url('portal-hero-skull.jpg');
    background-position:right center;
}
.wwaed-graphic-hero .wwaed-eyebrow{
    font-size:13px;
    letter-spacing:.16em;
}
.wwaed-graphic-hero h1{
    font-size:50px;
    text-shadow:0 2px 20px rgba(0,0,0,.55);
}
.wwaed-graphic-hero h2{
    max-width:720px;
    margin-left:auto;
    margin-right:auto;
}
.wwaed-graphic-hero p{
    margin-left:auto;
    margin-right:auto;
}

/* Stronger module status hierarchy */
.wwaed-module-card{
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.wwaed-module-card.state-live{
    background:#000;
    color:#fff;
    border:2px solid #00ff01;
    border-top:7px solid #00ff01;
    box-shadow:0 12px 28px rgba(0,0,0,.17);
}
.wwaed-module-card.state-live h2,
.wwaed-module-card.state-live p{
    color:#fff;
}
.wwaed-module-card.state-live .wwaed-module-top span{
    background:#00ff01;
    color:#000;
}
.wwaed-module-card.state-live .wwaed-primary-button{
    background:#00ff01;
    color:#000!important;
    border-color:#00ff01;
}
.wwaed-module-card.state-live .wwaed-primary-button:hover{
    background:#fff;
    border-color:#fff;
    color:#000!important;
}
.wwaed-module-card.state-testing{
    background:#191919;
    color:#fff;
    border:2px solid #ffb300;
    border-top:7px solid #ffb300;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.wwaed-module-card.state-testing h2,
.wwaed-module-card.state-testing p{
    color:#fff;
}
.wwaed-module-card.state-testing .wwaed-module-top span{
    background:#ffb300;
    color:#000;
}
.wwaed-module-card.state-testing .wwaed-primary-button{
    background:#ffb300;
    color:#000!important;
    border-color:#ffb300;
}
.wwaed-module-card.state-testing .wwaed-primary-button:hover{
    background:#fff;
    border-color:#fff;
}
.wwaed-module-card.state-coming_soon{
    background:#fff;
    color:#3f4743;
    border:1px solid #d8ddda;
    border-top:5px solid #2b2b2b;
    box-shadow:0 7px 18px rgba(0,0,0,.055);
    opacity:.86;
}
.wwaed-module-card.state-coming_soon .wwaed-module-top span{
    background:#ededed;
    color:#404744;
}
.wwaed-module-card.state-coming_soon .wwaed-coming-soon{
    background:#f1f2f1;
    color:#444;
}
@media (hover:hover){
    .wwaed-module-card.state-live:hover{
        transform:translateY(-4px);
        box-shadow:0 18px 38px rgba(0,255,1,.10),0 14px 34px rgba(0,0,0,.23);
    }
    .wwaed-module-card.state-testing:hover{
        transform:translateY(-3px);
        box-shadow:0 15px 32px rgba(255,179,0,.09),0 12px 26px rgba(0,0,0,.19);
    }
}

/* Never let status badges crush module titles */
.wwaed-module-top{
    display:grid;
    grid-template-columns:minmax(0,1fr) max-content;
    align-items:start;
    column-gap:12px;
}
.wwaed-module-top h2{
    min-width:0;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}
.wwaed-module-top span{
    white-space:nowrap;
    line-height:1.15;
}

/* Consistent touch targets */
.wwaed-primary-button,
.wwaed-coming-soon,
.wwaed-admin-switch,
.wwaed-portal-header nav a{
    min-height:44px;
}

/* Administration cards inherit the same rounded, finished feel */
.wwaed-core-admin .widefat,
.wwaed-core-admin .widefat th,
.wwaed-core-admin .widefat td{
    border-color:#e0e4e2;
}
.wwaed-table-scroll{
    border-radius:16px;
    overflow:auto;
    background:#fff;
    box-shadow:0 6px 18px rgba(0,0,0,.045);
}

/* Tablet */
@media(max-width:1050px){
    .wwaed-graphic-hero{
        padding-left:190px;
        padding-right:190px;
        min-height:430px;
    }
    .wwaed-hero-horse{width:220px;height:330px}
    .wwaed-hero-skull{width:225px;height:190px}
    .wwaed-graphic-hero h1{font-size:44px}
}

/* Mobile-first operational layout */
@media(max-width:700px){
    .wwaed-portal-shell{
        width:100%;
        max-width:100%;
        padding:10px;
        overflow-x:hidden;
    }
    .wwaed-portal-header{
        display:grid;
        grid-template-columns:1fr;
        gap:12px;
        padding-bottom:15px;
    }
    .wwaed-portal-header>a{
        display:flex;
        justify-content:center;
    }
    .wwaed-portal-header img{
        width:min(210px,72vw);
        height:auto;
    }
    .wwaed-portal-header nav{
        width:100%;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .wwaed-portal-header nav a{
        width:100%;
        justify-content:center;
        text-align:center;
        padding:10px 9px;
        font-size:14px;
    }

    .wwaed-graphic-hero{
        min-height:480px;
        padding:38px 20px 165px;
        text-align:center;
        border-radius:20px;
    }
    .wwaed-hero-horse{
        width:155px;
        height:205px;
        left:-6px;
        bottom:-3px;
        opacity:.94;
    }
    .wwaed-hero-skull{
        width:145px;
        height:120px;
        right:4px;
        top:auto;
        bottom:22px;
        opacity:.88;
    }
    .wwaed-graphic-hero h1{
        font-size:34px;
        line-height:1.08;
    }
    .wwaed-graphic-hero h2{
        font-size:18px;
        line-height:1.35;
    }
    .wwaed-graphic-hero p{
        font-size:15px;
        line-height:1.5;
    }
    .wwaed-graphic-hero .wwaed-eyebrow{
        font-size:10px;
        line-height:1.4;
        letter-spacing:.11em;
    }

    .wwaed-public-route-grid,
    .wwaed-module-grid,
    .wwaed-admin-dashboard-grid{
        grid-template-columns:1fr!important;
        gap:14px;
    }

    .wwaed-module-card,
    .wwaed-public-route-card{
        min-height:0;
        padding:20px;
    }

    .wwaed-module-top{
        grid-template-columns:1fr;
        row-gap:9px;
    }
    .wwaed-module-top span{
        justify-self:start;
        width:auto;
        max-width:100%;
        padding:6px 10px;
        white-space:nowrap;
    }
    .wwaed-module-top h2{
        width:100%;
        font-size:24px;
        line-height:1.2;
        margin:0;
    }

    .wwaed-primary-button,
    .wwaed-coming-soon{
        width:100%;
        min-height:48px;
    }

    .wwaed-dashboard-welcome{
        padding:24px 18px;
        border-radius:20px;
    }
    .wwaed-dashboard-welcome h1{
        font-size:31px;
    }
    .wwaed-admin-switch{
        min-width:0;
        width:100%;
    }

    .wwaed-person-strip{
        grid-template-columns:1fr!important;
    }

    .wwaed-benefit-row{
        grid-template-columns:1fr!important;
    }

    .wwaed-admin-mode-banner{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
        margin:8px 8px 0 0!important;
    }
    .wwaed-admin-mode-banner span,
    .wwaed-admin-mode-banner a{
        justify-self:start;
    }

    .wwaed-module-admin-card{
        grid-template-columns:1fr!important;
    }
    .wwaed-module-admin-card details{
        grid-column:1!important;
    }

    .wwaed-grid2,
    .wwaed-permission-grid,
    .wwaed-tester-grid{
        grid-template-columns:1fr!important;
    }

    /* Prevent WP admin card/table layouts from forcing page width */
    .wwaed-core-admin{
        max-width:100%;
        overflow-x:hidden;
    }
    .wwaed-table-scroll{
        max-width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }
    .wwaed-table-scroll table{
        min-width:720px;
    }
}

/* Small phones */
@media(max-width:390px){
    .wwaed-portal-header nav{
        grid-template-columns:1fr;
    }
    .wwaed-graphic-hero{
        min-height:500px;
        padding-left:16px;
        padding-right:16px;
    }
    .wwaed-graphic-hero h1{font-size:30px}
    .wwaed-hero-horse{width:135px;height:185px}
    .wwaed-hero-skull{width:125px;height:105px}
    .wwaed-module-top h2{font-size:22px}
}


/* =========================================================
   v1.1.2 – Approved public landing page + CPD routing
   ========================================================= */
.wwaed-public-home-frame{
    margin:22px auto;
    background:#000;
    border:1px solid #202520;
    border-radius:30px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.wwaed-public-nav{
    min-height:94px;
    padding:14px 30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    border-bottom:2px solid #00ff01;
    background:#000;
}
.wwaed-public-logo img{
    width:290px;
    max-width:34vw;
    height:auto;
    display:block;
}
.wwaed-desktop-menu{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:30px;
    flex-wrap:wrap;
}
.wwaed-desktop-menu a,
.wwaed-mobile-menu a{
    color:#fff!important;
    text-decoration:none!important;
    font-weight:600;
    font-size:15px;
}
.wwaed-desktop-menu a:hover{color:#00ff01!important}
.wwaed-mobile-menu{display:none}
.wwaed-public-hero{
    position:relative;
    min-height:450px;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    text-align:center;
    padding:54px 330px 160px;
    overflow:hidden;
    background:
      radial-gradient(circle at 50% 0%, rgba(0,255,1,.07), transparent 34%),
      linear-gradient(180deg,#050505 0%,#000 100%);
}
.wwaed-public-horse,
.wwaed-public-skull{
    position:absolute;
    background-repeat:no-repeat;
    background-size:contain;
    pointer-events:none;
    z-index:1;
}
.wwaed-public-horse{
    left:0;
    bottom:0;
    width:330px;
    height:420px;
    background-image:url('portal-home-horse.jpg');
    background-position:left bottom;
}
.wwaed-public-skull{
    right:18px;
    top:32px;
    width:330px;
    height:270px;
    background-image:url('portal-home-skull.jpg');
    background-position:right top;
}
.wwaed-public-hero-copy{
    position:relative;
    z-index:3;
    max-width:760px;
}
.wwaed-public-hero h1{
    margin:0;
    color:#fff;
    font-size:48px;
    line-height:1.08;
    font-weight:800;
}
.wwaed-public-hero h1 em{font-style:normal;color:#00ff01}
.wwaed-public-hero h2{
    margin:22px auto 16px;
    color:#00ff01;
    max-width:760px;
    font-size:20px;
    line-height:1.35;
}
.wwaed-public-hero p{
    margin:0 auto;
    color:#fff;
    max-width:660px;
    font-size:17px;
    line-height:1.55;
}
.wwaed-home-card-band{
    margin-top:-145px;
    position:relative;
    z-index:5;
    background:#fff;
    padding:0 42px 28px;
}
.wwaed-home-route-grid{
    max-width:1040px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.wwaed-home-route-card{
    border-radius:20px;
    padding:50px 26px 24px;
    min-height:390px;
    display:flex;
    flex-direction:column;
    position:relative;
    box-shadow:0 8px 22px rgba(0,0,0,.10);
}
.wwaed-home-route-card.live.light{
    background:#fff;
    border:2px solid #00b800;
    color:#151515;
}
.wwaed-home-route-card.live.dark{
    background:#050505;
    border:2px solid #00ff01;
    color:#fff;
}
.wwaed-home-icon{
    position:absolute;
    width:72px;
    height:72px;
    top:-38px;
    left:50%;
    transform:translateX(-50%);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:2px solid #00ff01;
    color:#0aa30a;
    font-size:16px;
    letter-spacing:-2px;
    font-weight:900;
}
.wwaed-home-icon.clipboard{font-size:34px;letter-spacing:0}
.wwaed-home-icon.lock{background:#060606;color:#00ff01;font-size:31px}
.wwaed-home-route-card h2{
    margin:0 0 4px;
    text-align:center;
    color:#13a713;
    font-size:25px;
    line-height:1.18;
}
.wwaed-home-route-card.dark h2{color:#00ff01}
.wwaed-home-route-card h3{
    margin:0 0 16px;
    text-align:center;
    color:inherit;
    font-size:16px;
}
.wwaed-home-route-card p{
    text-align:center;
    line-height:1.48;
    margin:0 0 14px;
}
.wwaed-home-route-card ul{
    margin:0 0 18px;
    padding:0;
    list-style:none;
    flex:1;
}
.wwaed-home-route-card li{
    position:relative;
    margin:7px 0;
    padding-left:23px;
    line-height:1.35;
}
.wwaed-home-route-card li:before{
    content:"✓";
    position:absolute;
    left:0;
    color:#00c900;
    font-weight:900;
}
.wwaed-home-action{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    min-height:50px;
    padding:12px 16px;
    border-radius:12px;
    background:#00ff01;
    color:#000!important;
    text-decoration:none!important;
    font-weight:900;
    text-align:center;
}
.wwaed-home-action:hover{background:#000;color:#00ff01!important}
.wwaed-home-route-card.dark .wwaed-home-action:hover{background:#fff;color:#000!important}
.wwaed-home-benefits{
    background:#050505;
    border-top:1px solid #00ff01;
    border-bottom:1px solid #00ff01;
    padding:24px 38px;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
}
.wwaed-home-benefits>div{
    color:#fff;
    text-align:center;
    padding:8px 20px;
    border-right:1px solid #2f6c2f;
}
.wwaed-home-benefits>div:last-child{border-right:0}
.wwaed-home-benefits strong{display:block;color:#fff;margin-bottom:6px}
.wwaed-home-benefits span{display:block;color:#d8ded8;font-size:13px;line-height:1.45}
.wwaed-home-footer{
    min-height:74px;
    padding:12px 30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
    background:#000;
    color:#fff;
    font-size:13px;
}
.wwaed-home-footer img{width:210px;height:auto}
.wwaed-public-form-card{
    margin:28px auto!important;
    max-width:900px;
}
.wwaed-login-help{margin-top:15px;color:#4f5a54}

/* Live CPD must be strongly selectable in My WWAED. */
.wwaed-module-card.state-live .wwaed-primary-button{
    display:flex!important;
    width:100%;
    margin-top:auto;
}
.wwaed-module-card.state-live{
    cursor:default;
}

/* Tablet */
@media(max-width:1050px){
    .wwaed-public-nav{padding:12px 20px}
    .wwaed-public-logo img{width:230px}
    .wwaed-desktop-menu{gap:17px}
    .wwaed-public-hero{padding-left:250px;padding-right:250px}
    .wwaed-public-horse{width:270px;height:370px}
    .wwaed-public-skull{width:260px;height:220px}
}

/* Mobile: same visual identity, purpose-built layout */
@media(max-width:760px){
    .wwaed-public-home-frame{
        margin:10px 0;
        border-radius:22px;
    }
    .wwaed-public-nav{
        min-height:72px;
        padding:10px 14px;
    }
    .wwaed-public-logo img{
        width:190px;
        max-width:70vw;
    }
    .wwaed-desktop-menu{display:none}
    .wwaed-mobile-menu{display:block;position:relative}
    .wwaed-mobile-menu summary{
        list-style:none;
        cursor:pointer;
        color:#fff;
        font-size:28px;
        line-height:1;
        padding:8px;
    }
    .wwaed-mobile-menu summary::-webkit-details-marker{display:none}
    .wwaed-mobile-menu[open] nav{
        position:absolute;
        right:0;
        top:44px;
        z-index:50;
        width:220px;
        display:grid;
        background:#050505;
        border:1px solid #00ff01;
        border-radius:14px;
        overflow:hidden;
        box-shadow:0 12px 28px rgba(0,0,0,.35);
    }
    .wwaed-mobile-menu nav a{
        padding:12px 14px;
        border-bottom:1px solid #263126;
    }
    .wwaed-mobile-menu nav a:last-child{border-bottom:0}

    .wwaed-public-hero{
        min-height:455px;
        padding:170px 18px 35px;
        align-items:flex-start;
    }
    .wwaed-public-horse{
        top:10px;left:4px;bottom:auto;
        width:145px;height:155px;
    }
    .wwaed-public-skull{
        top:20px;right:5px;
        width:150px;height:130px;
    }
    .wwaed-public-hero h1{font-size:31px}
    .wwaed-public-hero h2{font-size:16px;margin-top:16px}
    .wwaed-public-hero p{font-size:14px}
    .wwaed-home-card-band{
        margin-top:0;
        padding:12px 10px 16px;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    .wwaed-home-route-card{
        min-height:0;
        padding:14px 50px 14px 72px;
        border-radius:14px;
        box-shadow:none;
        display:block;
    }
    .wwaed-home-route-card .wwaed-home-icon{
        width:48px;height:48px;
        top:50%;left:14px;
        transform:translateY(-50%);
        font-size:11px;
    }
    .wwaed-home-route-card .wwaed-home-icon.clipboard,
    .wwaed-home-route-card .wwaed-home-icon.lock{font-size:23px}
    .wwaed-home-route-card h2{
        text-align:left;
        font-size:19px;
        margin:0;
        line-height:1.18;
    }
    .wwaed-home-route-card h3{
        text-align:left;
        font-size:12px;
        margin:3px 0 0;
        text-transform:none;
    }
    .wwaed-home-route-card p,
    .wwaed-home-route-card ul{display:none}
    .wwaed-home-route-card .wwaed-home-action{
        position:absolute;
        inset:0;
        background:transparent!important;
        color:transparent!important;
        border-radius:14px;
        font-size:0;
    }
    .wwaed-home-route-card .wwaed-home-action span{
        position:absolute;
        right:14px;
        top:50%;
        transform:translateY(-50%);
        color:#111;
        font-size:31px;
        line-height:1;
    }
    .wwaed-home-route-card.dark .wwaed-home-action span{color:#00ff01}
    .wwaed-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding:10px;
        gap:1px;
        background:#0b0b0b;
    }
    .wwaed-home-benefits>div{
        border:1px solid #1f541f;
        padding:14px 8px;
    }
    .wwaed-home-benefits>div:last-child{grid-column:1/-1}
    .wwaed-home-benefits strong{font-size:12px}
    .wwaed-home-benefits span{font-size:11px}
    .wwaed-home-footer{
        justify-content:center;
        text-align:center;
        padding:16px 12px;
    }
    .wwaed-home-footer img{width:175px}
    .wwaed-home-footer span{width:100%}
}


/* =========================================================
   v1.1.3 – Pre-launch routes + WordPress title suppression
   ========================================================= */

/* The Portal owns its own title/hero. Hide the theme-generated WordPress
   page title and surrounding title/header spacing on this page only. */
body.wwaed-portal-home-page .entry-title,
body.wwaed-portal-home-page .page-title,
body.wwaed-portal-home-page header.entry-header,
body.wwaed-portal-home-page .entry-header,
body.wwaed-portal-home-page .wp-block-post-title{
    display:none!important;
}
body.wwaed-portal-home-page .site-main,
body.wwaed-portal-home-page .content-area,
body.wwaed-portal-home-page .entry-content{
    margin-top:0!important;
    padding-top:0!important;
}

/* Public application pathways are visible before launch, but deliberately
   non-interactive until the workflows behind them are ready. */
.wwaed-home-action-disabled{
    background:#e9ecea!important;
    color:#56605b!important;
    border:1px solid #d7ddda!important;
    cursor:not-allowed!important;
    box-shadow:none!important;
    user-select:none;
}
.wwaed-home-action-disabled:hover{
    background:#e9ecea!important;
    color:#56605b!important;
}
.wwaed-home-route-card.light:has(.wwaed-home-action-disabled){
    border-color:#aab3ae;
}
.wwaed-home-route-card.light:has(.wwaed-home-action-disabled) .wwaed-home-icon{
    border-color:#9fa8a3;
}

/* PHP 7.4-era browser support fallback: keep pre-launch cards clear even
   where :has() is unsupported by relying on the disabled button treatment. */

@media(max-width:760px){
    body.wwaed-portal-home-page .entry-content{
        margin-top:0!important;
        padding-top:0!important;
    }
    .wwaed-home-action-disabled{
        position:static!important;
        display:flex!important;
        width:100%!important;
        min-height:42px!important;
        margin-top:8px!important;
        font-size:13px!important;
        color:#56605b!important;
        background:#e9ecea!important;
    }
    /* Keep the pre-launch cards informative on mobile rather than making
       the entire card behave like a hidden link. */
    .wwaed-home-route-card:has(.wwaed-home-action-disabled){
        padding-right:14px!important;
    }
}


/* =========================================================
   v1.1.4 – Final landing-page simplification
   ========================================================= */

/* Portal front door: logo only, no public navigation menu. */
.wwaed-public-nav-simple{
    justify-content:flex-start!important;
}
.wwaed-public-nav-simple .wwaed-public-logo img{
    max-width:min(320px,70vw);
}
.wwaed-desktop-menu,
.wwaed-mobile-menu{
    display:none!important;
}

/* Hero is now purely branding + orientation; route cards sit below it. */
.wwaed-public-hero{
    min-height:420px!important;
    padding-bottom:52px!important;
}
.wwaed-choose-below{
    margin-top:18px!important;
    color:#00ff01!important;
    font-weight:800;
    letter-spacing:.01em;
}

/* No card overlap with the hero. */
.wwaed-home-card-band{
    margin-top:0!important;
    padding-top:34px!important;
}

/* Cleaner decision cards: no tick-list detail on the homepage. */
.wwaed-home-route-card{
    min-height:300px!important;
    justify-content:flex-start;
    padding-top:52px!important;
}
.wwaed-home-route-card ul{
    display:none!important;
}
.wwaed-home-route-card p{
    flex:1;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    text-align:center;
    max-width:290px;
    margin:0 auto 22px!important;
}
.wwaed-home-route-card.light{
    border-color:#cfd6d2!important;
}
.wwaed-home-route-card.light .wwaed-home-icon{
    border-color:#00ff01!important;
}
.wwaed-home-route-card.light .wwaed-home-action-disabled{
    background:#ecefed!important;
    color:#5f6964!important;
    border-color:#d9dedb!important;
}

/* Mobile: hero first, then clearly separated stacked options. */
@media(max-width:760px){
    .wwaed-public-nav{
        min-height:82px!important;
        padding:12px 16px!important;
    }
    .wwaed-public-nav-simple{
        justify-content:center!important;
    }
    .wwaed-public-logo img{
        width:min(260px,82vw)!important;
        max-width:none!important;
    }

    .wwaed-public-hero{
        min-height:0!important;
        padding:165px 18px 34px!important;
    }
    .wwaed-public-horse{
        top:12px!important;
        left:8px!important;
        width:142px!important;
        height:145px!important;
    }
    .wwaed-public-skull{
        top:18px!important;
        right:8px!important;
        width:145px!important;
        height:125px!important;
    }
    .wwaed-public-hero h1{
        font-size:30px!important;
        line-height:1.08!important;
    }
    .wwaed-public-hero h2{
        font-size:16px!important;
        line-height:1.35!important;
        margin:14px auto 10px!important;
    }
    .wwaed-public-hero p{
        font-size:14px!important;
        line-height:1.45!important;
        margin-bottom:0!important;
    }
    .wwaed-choose-below{
        margin-top:14px!important;
        font-size:15px!important;
    }

    .wwaed-home-card-band{
        padding:14px 10px 18px!important;
        background:#fff!important;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    .wwaed-home-route-card{
        min-height:0!important;
        padding:18px 18px 16px 72px!important;
        border-radius:16px!important;
        display:block!important;
    }
    .wwaed-home-route-card .wwaed-home-icon{
        left:14px!important;
        top:20px!important;
        transform:none!important;
        width:46px!important;
        height:46px!important;
    }
    .wwaed-home-route-card h2,
    .wwaed-home-route-card h3,
    .wwaed-home-route-card p{
        text-align:left!important;
    }
    .wwaed-home-route-card h2{
        font-size:20px!important;
        margin:0 0 3px!important;
    }
    .wwaed-home-route-card h3{
        font-size:12px!important;
        margin-bottom:7px!important;
    }
    .wwaed-home-route-card p{
        display:block!important;
        max-width:none!important;
        font-size:13px!important;
        line-height:1.4!important;
        margin:0 0 12px!important;
    }
    .wwaed-home-action{
        position:static!important;
        display:flex!important;
        width:100%!important;
        min-height:44px!important;
        margin-top:0!important;
        font-size:14px!important;
        color:#000!important;
        border-radius:10px!important;
    }
    .wwaed-home-action span{
        position:static!important;
        transform:none!important;
        color:inherit!important;
        font-size:18px!important;
    }
    .wwaed-home-action-disabled{
        color:#5f6964!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action{
        color:#000!important;
    }
}


/* =========================================================
   v1.1.5 – Clean hero artwork
   ========================================================= */

/* Clean hero artwork: only the horse, skull and central copy.
   Decorative source-image artefacts are removed by using clean crops. */
.wwaed-public-hero{
    background:
      radial-gradient(circle at 50% 0%, rgba(0,255,1,.055), transparent 35%),
      linear-gradient(180deg,#050505 0%,#000 100%)!important;
}
.wwaed-public-hero:before,
.wwaed-public-hero:after{
    content:none!important;
    display:none!important;
}
.wwaed-public-horse,
.wwaed-public-skull{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
}
.wwaed-public-horse{
    background-position:left bottom!important;
}
.wwaed-public-skull{
    background-position:right top!important;
}

/* Keep only the intended green separator between hero and options. */
.wwaed-home-card-band{
    border-top:2px solid #00ff01;
}

/* Mobile uses the same clean imagery with no embedded card fragments. */
@media(max-width:760px){
    .wwaed-public-horse{
        width:150px!important;
        height:155px!important;
        background-size:contain!important;
    }
    .wwaed-public-skull{
        width:150px!important;
        height:125px!important;
        background-size:contain!important;
    }
}


/* =========================================================
   v1.1.6 – Clean approved horse/skull artwork
   ========================================================= */
.wwaed-public-horse,
.wwaed-public-skull{
    background-color:transparent!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.wwaed-public-horse{
    left:0!important;
    bottom:0!important;
    width:325px!important;
    height:400px!important;
    background-image:url('portal-home-horse.jpg')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:left bottom!important;
}
.wwaed-public-skull{
    right:12px!important;
    top:26px!important;
    width:340px!important;
    height:255px!important;
    background-image:url('portal-home-skull.jpg')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:right top!important;
}
@media(max-width:760px){
    .wwaed-public-horse{
        top:12px!important;
        bottom:auto!important;
        left:6px!important;
        width:145px!important;
        height:145px!important;
        background-position:left top!important;
    }
    .wwaed-public-skull{
        top:16px!important;
        right:6px!important;
        width:145px!important;
        height:120px!important;
        background-position:right top!important;
    }
}


/* =========================================================
   v1.1.8 – Match the approved landing-page mock-up exactly
   ========================================================= */

/* Outer frame */
.wwaed-public-home-frame{
    border-radius:30px!important;
    overflow:hidden!important;
    background:#000!important;
}

/* Logo header with the agreed green divider beneath it */
.wwaed-public-nav-simple{
    min-height:118px!important;
    padding:18px 34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    border-bottom:2px solid #00ff01!important;
    background:#000!important;
}
.wwaed-public-nav-simple .wwaed-public-logo img{
    width:290px!important;
    max-width:min(74vw,290px)!important;
    height:auto!important;
    display:block!important;
}

/* Clean hero: horse left, skull right, no cards or stray artefacts embedded */
.wwaed-public-hero{
    min-height:380px!important;
    padding:44px 320px 36px!important;
    background:#000!important;
    border:0!important;
}
.wwaed-public-hero:before,
.wwaed-public-hero:after{
    content:none!important;
    display:none!important;
}
.wwaed-public-horse{
    left:0!important;
    bottom:0!important;
    top:auto!important;
    width:330px!important;
    height:360px!important;
    background-image:url('portal-home-horse.jpg')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:left bottom!important;
    border:0!important;
    box-shadow:none!important;
}
.wwaed-public-skull{
    right:18px!important;
    top:28px!important;
    width:330px!important;
    height:240px!important;
    background-image:url('portal-home-skull.jpg')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:right top!important;
    border:0!important;
    box-shadow:none!important;
}
.wwaed-public-hero-copy{
    max-width:620px!important;
}
.wwaed-public-hero h1{
    font-size:44px!important;
    line-height:1.05!important;
}
.wwaed-public-hero h2{
    font-size:18px!important;
    line-height:1.35!important;
}
.wwaed-public-hero p{
    font-size:16px!important;
    line-height:1.5!important;
}
.wwaed-choose-below{
    margin-top:18px!important;
    font-size:17px!important;
    color:#00ff01!important;
    font-weight:800!important;
}

/* Exactly one green line between hero and the route options */
.wwaed-home-card-band{
    margin-top:0!important;
    padding:34px 42px 28px!important;
    background:#fff!important;
    border-top:2px solid #00ff01!important;
}

/* Agreed card treatment: unavailable routes are white with charcoal outline */
.wwaed-home-route-card{
    min-height:330px!important;
    border-radius:20px!important;
    padding:52px 28px 24px!important;
    box-shadow:0 8px 22px rgba(0,0,0,.08)!important;
}
.wwaed-home-route-card.light{
    background:#fff!important;
    border:2px solid #555b58!important;
    color:#171717!important;
}
.wwaed-home-route-card.light h2{
    color:#167d16!important;
}
.wwaed-home-route-card.light .wwaed-home-icon{
    background:#fff!important;
    border:2px solid #555b58!important;
    color:#167d16!important;
}
.wwaed-home-route-card.light .wwaed-home-action-disabled{
    background:#e7e9e8!important;
    border:0!important;
    color:#333!important;
    font-weight:800!important;
}
.wwaed-home-route-card.dark{
    background:#050505!important;
    border:2px solid #00ff01!important;
    color:#fff!important;
}
.wwaed-home-route-card.dark h2{
    color:#00ff01!important;
}
.wwaed-home-route-card.dark .wwaed-home-icon{
    background:#050505!important;
    border:2px solid #00ff01!important;
    color:#00ff01!important;
}
.wwaed-home-route-card.dark .wwaed-home-action{
    background:#00ff01!important;
    color:#000!important;
}

/* Mobile: same identity, no overlap, no hidden/stray graphic fragments */
@media(max-width:760px){
    .wwaed-public-home-frame{
        margin:8px 0!important;
        border-radius:22px!important;
    }
    .wwaed-public-nav-simple{
        min-height:98px!important;
        padding:14px 18px!important;
        justify-content:flex-start!important;
        border-bottom:2px solid #00ff01!important;
    }
    .wwaed-public-nav-simple .wwaed-public-logo img{
        width:min(260px,82vw)!important;
        max-width:none!important;
    }

    .wwaed-public-hero{
        min-height:0!important;
        padding:150px 18px 30px!important;
    }
    .wwaed-public-horse{
        left:8px!important;
        top:12px!important;
        bottom:auto!important;
        width:142px!important;
        height:132px!important;
        background-position:left top!important;
    }
    .wwaed-public-skull{
        right:8px!important;
        top:18px!important;
        width:145px!important;
        height:115px!important;
        background-position:right top!important;
    }
    .wwaed-public-hero h1{
        font-size:30px!important;
        line-height:1.08!important;
    }
    .wwaed-public-hero h2{
        font-size:15px!important;
        line-height:1.35!important;
    }
    .wwaed-public-hero p{
        font-size:13px!important;
        line-height:1.45!important;
    }
    .wwaed-choose-below{
        font-size:14px!important;
        margin-top:14px!important;
    }

    .wwaed-home-card-band{
        border-top:2px solid #00ff01!important;
        padding:12px 10px 16px!important;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }

    .wwaed-home-route-card{
        min-height:0!important;
        padding:14px 12px 14px 70px!important;
        border-radius:14px!important;
        box-shadow:none!important;
    }
    .wwaed-home-route-card .wwaed-home-icon{
        left:14px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        width:44px!important;
        height:44px!important;
    }
    .wwaed-home-route-card h2{
        font-size:18px!important;
        text-align:left!important;
        margin:0 0 2px!important;
    }
    .wwaed-home-route-card h3{
        font-size:12px!important;
        text-align:left!important;
        margin:0!important;
    }
    .wwaed-home-route-card p{
        display:none!important;
    }
    .wwaed-home-route-card .wwaed-home-action{
        position:absolute!important;
        inset:0!important;
        background:transparent!important;
        color:transparent!important;
        border-radius:14px!important;
        font-size:0!important;
    }
    .wwaed-home-route-card .wwaed-home-action-disabled{
        position:static!important;
        display:inline-flex!important;
        width:auto!important;
        min-height:0!important;
        padding:6px 10px!important;
        margin-top:8px!important;
        background:#e7e9e8!important;
        color:#333!important;
        font-size:11px!important;
        border-radius:999px!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action{
        position:absolute!important;
        inset:0!important;
        background:transparent!important;
        color:transparent!important;
        font-size:0!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action span{
        position:absolute!important;
        right:14px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        color:#fff!important;
        font-size:28px!important;
    }
}


/* =========================================================
   v1.1.9 – Approved artwork as the hero itself
   ========================================================= */

.wwaed-approved-hero{
    display:block;
    width:100%;
    margin:0;
    padding:0;
    background:#000;
    border-bottom:2px solid #00ff01;
}
.wwaed-approved-hero picture,
.wwaed-approved-hero img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    padding:0;
}

/* The approved artwork already contains its own logo/header/hero composition,
   so hide all reconstructed public header/hero elements from earlier builds. */
.wwaed-public-nav,
.wwaed-public-hero,
.wwaed-public-horse,
.wwaed-public-skull,
.wwaed-public-hero-copy{
    display:none!important;
}

/* Cards are separate HTML controls below the approved artwork. */
.wwaed-home-card-band{
    margin-top:0!important;
    padding:30px 42px 28px!important;
    background:#fff!important;
    border-top:0!important;
}
.wwaed-home-route-grid{
    max-width:1040px;
    margin:0 auto;
}

/* Unavailable routes use charcoal outlines. */
.wwaed-home-route-card.light{
    border:2px solid #555b58!important;
    background:#fff!important;
}
.wwaed-home-route-card.light .wwaed-home-icon{
    border-color:#555b58!important;
}
.wwaed-home-route-card.light .wwaed-home-action-disabled{
    background:#e7e9e8!important;
    color:#333!important;
    border:0!important;
}

/* Active sign-in remains black/green. */
.wwaed-home-route-card.dark{
    background:#050505!important;
    border:2px solid #00ff01!important;
}

/* Mobile: approved mobile artwork, then stacked HTML options. */
@media(max-width:760px){
    .wwaed-approved-hero{
        border-bottom:2px solid #00ff01;
    }
    .wwaed-home-card-band{
        padding:12px 10px 16px!important;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }
}


/* =========================================================
   v1.2.0 – Frozen, pixel-matched public portal
   Top artwork + coded cards + bottom artwork
   ========================================================= */

/* Public frame */
.wwaed-public-home-frame{
    background:#fff!important;
    border-radius:30px!important;
    overflow:hidden!important;
    border:1px solid #d7dad8!important;
    box-shadow:0 14px 40px rgba(0,0,0,.14)!important;
}

/* Exact approved artwork at the top */
.wwaed-approved-hero{
    display:block!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
    background:#000!important;
    border:0!important;
}
.wwaed-approved-hero picture,
.wwaed-approved-hero img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
}

/* Hide every old/reconstructed hero element */
.wwaed-public-nav,
.wwaed-public-hero,
.wwaed-public-horse,
.wwaed-public-skull,
.wwaed-public-hero-copy,
.wwaed-home-benefits,
.wwaed-home-footer{
    display:none!important;
}

/* Coded cards sit BETWEEN the two artwork images – never overlap the hero */
.wwaed-home-card-band{
    display:block!important;
    margin:0!important;
    padding:22px 42px 30px!important;
    background:#fff!important;
    border-top:0!important;
    position:relative!important;
    z-index:1!important;
}
.wwaed-home-route-grid{
    max-width:1040px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:28px!important;
}
.wwaed-home-route-card{
    position:relative!important;
    min-height:365px!important;
    padding:54px 26px 24px!important;
    border-radius:20px!important;
    box-shadow:none!important;
    display:flex!important;
    flex-direction:column!important;
}
.wwaed-home-route-card.light{
    background:#fff!important;
    color:#111!important;
    border:2px solid #555b58!important;
}
.wwaed-home-route-card.dark{
    background:#050505!important;
    color:#fff!important;
    border:2px solid #00ff01!important;
}
.wwaed-home-route-card h2{
    margin:0 0 5px!important;
    text-align:center!important;
    color:#167d16!important;
    font-size:25px!important;
    line-height:1.15!important;
}
.wwaed-home-route-card.dark h2{
    color:#00ff01!important;
}
.wwaed-home-route-card h3{
    margin:0 0 18px!important;
    text-align:center!important;
    color:inherit!important;
    font-size:16px!important;
}
.wwaed-home-route-card p{
    max-width:290px!important;
    margin:0 auto 20px!important;
    text-align:center!important;
    line-height:1.5!important;
    flex:1!important;
}
.wwaed-home-route-card ul{
    display:none!important;
}

/* Full coded circles – these are card elements, not part of either graphic */
.wwaed-home-icon{
    position:absolute!important;
    top:-38px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:72px!important;
    height:72px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    border:2px solid #555b58!important;
    color:#167d16!important;
    z-index:3!important;
}
.wwaed-home-route-card.dark .wwaed-home-icon{
    background:#050505!important;
    border-color:#00ff01!important;
    color:#00ff01!important;
}

/* Unavailable routes are intentionally subdued */
.wwaed-home-action-disabled{
    position:static!important;
    display:flex!important;
    width:100%!important;
    min-height:50px!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:10px!important;
    background:#e7e9e8!important;
    border:0!important;
    color:#333!important;
    font-weight:800!important;
    cursor:not-allowed!important;
}

/* Live sign-in is dominant */
.wwaed-home-route-card.dark .wwaed-home-action{
    position:static!important;
    display:flex!important;
    width:100%!important;
    min-height:50px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:14px!important;
    border-radius:10px!important;
    background:#00ff01!important;
    color:#000!important;
    font-weight:900!important;
}

/* Exact approved artwork at the bottom */
.wwaed-approved-footer{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#000!important;
    border:0!important;
}
.wwaed-approved-footer picture,
.wwaed-approved-footer img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
}

/* Mobile is separately artworked, with compact coded route rows in between */
@media(max-width:760px){
    .wwaed-public-home-frame{
        border-radius:22px!important;
        margin:8px 0!important;
    }
    .wwaed-home-card-band{
        padding:12px 10px 14px!important;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }
    .wwaed-home-route-card{
        min-height:0!important;
        padding:14px 110px 14px 70px!important;
        border-radius:14px!important;
        display:block!important;
    }
    .wwaed-home-route-card .wwaed-home-icon{
        width:44px!important;
        height:44px!important;
        top:50%!important;
        left:14px!important;
        transform:translateY(-50%)!important;
    }
    .wwaed-home-route-card h2{
        text-align:left!important;
        font-size:18px!important;
        margin:0 0 2px!important;
    }
    .wwaed-home-route-card h3{
        text-align:left!important;
        font-size:12px!important;
        margin:0!important;
    }
    .wwaed-home-route-card p{
        display:none!important;
    }
    .wwaed-home-action-disabled{
        position:absolute!important;
        right:12px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        width:auto!important;
        min-height:0!important;
        padding:7px 11px!important;
        border-radius:999px!important;
        font-size:11px!important;
        white-space:nowrap!important;
    }
    .wwaed-home-route-card.dark{
        padding-right:48px!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action{
        position:absolute!important;
        inset:0!important;
        background:transparent!important;
        color:transparent!important;
        font-size:0!important;
        min-height:0!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action span{
        position:absolute!important;
        right:14px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        color:#fff!important;
        font-size:28px!important;
    }
}

/* Small phones */
@media(max-width:390px){
    .wwaed-home-route-card{
        padding-right:96px!important;
    }
    .wwaed-home-action-disabled{
        right:8px!important;
        padding:6px 8px!important;
        font-size:10px!important;
    }
}


/* =========================================================
   v1.2.1 – Approved graphic implementation
   ========================================================= */
.wwaed-public-home-frame{
    background:#fff!important;
    border-radius:30px!important;
    overflow:hidden!important;
    border:1px solid #d7dad8!important;
    box-shadow:0 14px 40px rgba(0,0,0,.14)!important;
}
.wwaed-approved-hero,
.wwaed-approved-footer{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#000!important;
}
.wwaed-approved-hero img,
.wwaed-approved-footer img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
}
.wwaed-home-card-band{
    margin:0!important;
    padding:34px 42px 30px!important;
    background:#fff!important;
    border:0!important;
}
.wwaed-home-route-grid{
    max-width:1120px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:28px!important;
}
.wwaed-home-route-card{
    min-height:355px!important;
    padding:52px 26px 24px!important;
    border-radius:20px!important;
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    box-shadow:none!important;
}
.wwaed-home-route-card.light{
    background:#fff!important;
    color:#111!important;
    border:2px solid #383c3a!important;
}
.wwaed-home-route-card.dark{
    background:#050505!important;
    color:#fff!important;
    border:2px solid #00ff01!important;
}
.wwaed-home-route-card h2{
    margin:0 0 4px!important;
    text-align:center!important;
    font-size:25px!important;
    line-height:1.15!important;
    color:#111!important;
    padding-top:58px!important;
}
.wwaed-home-route-card.dark h2{color:#00d600!important}
.wwaed-home-route-card h3{
    margin:0 0 20px!important;
    text-align:center!important;
    font-size:16px!important;
    color:inherit!important;
}
.wwaed-home-route-card p{
    margin:0 auto 20px!important;
    max-width:310px!important;
    text-align:center!important;
    line-height:1.5!important;
    flex:1!important;
}
.wwaed-home-route-card ul{display:none!important}
.wwaed-home-icon{
    position:absolute!important;
    top:10px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:64px!important;
    height:64px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    border:2px solid #383c3a!important;
    color:#383c3a!important;
    z-index:2!important;
}
.wwaed-home-route-card.dark .wwaed-home-icon{
    background:#050505!important;
    border-color:#00ff01!important;
    color:#00ff01!important;
}
.wwaed-home-action-disabled{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:52px!important;
    border-radius:10px!important;
    background:#3a3a3a!important;
    color:#fff!important;
    font-weight:800!important;
    border:0!important;
    cursor:not-allowed!important;
}
.wwaed-home-route-card.dark .wwaed-home-action{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:14px!important;
    min-height:52px!important;
    border-radius:10px!important;
    background:#00ff01!important;
    color:#000!important;
    font-weight:900!important;
}
.wwaed-public-nav,
.wwaed-public-hero,
.wwaed-public-horse,
.wwaed-public-skull,
.wwaed-public-hero-copy,
.wwaed-home-benefits,
.wwaed-home-footer{
    display:none!important;
}
@media(max-width:760px){
    .wwaed-public-home-frame{
        border-radius:22px!important;
        margin:8px 0!important;
    }
    .wwaed-home-card-band{
        padding:16px 10px!important;
    }
    .wwaed-home-route-grid{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }
    .wwaed-home-route-card{
        min-height:0!important;
        padding:14px 108px 14px 72px!important;
        border-radius:14px!important;
        display:block!important;
    }
    .wwaed-home-route-card .wwaed-home-icon{
        width:44px!important;
        height:44px!important;
        top:50%!important;
        left:14px!important;
        transform:translateY(-50%)!important;
    }
    .wwaed-home-route-card h2{
        text-align:left!important;
        padding-top:0!important;
        font-size:18px!important;
        margin:0 0 2px!important;
    }
    .wwaed-home-route-card h3{
        text-align:left!important;
        font-size:12px!important;
        margin:0!important;
    }
    .wwaed-home-route-card p{display:none!important}
    .wwaed-home-action-disabled{
        position:absolute!important;
        right:12px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        min-height:0!important;
        width:auto!important;
        padding:7px 10px!important;
        border-radius:999px!important;
        font-size:11px!important;
        white-space:nowrap!important;
    }
    .wwaed-home-route-card.dark{
        padding-right:46px!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action{
        position:absolute!important;
        inset:0!important;
        background:transparent!important;
        color:transparent!important;
        font-size:0!important;
        min-height:0!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action span{
        position:absolute!important;
        right:14px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        color:#fff!important;
        font-size:28px!important;
    }
}


/* =========================================================
   v1.2.3 – Mobile readability
   Use exact user-uploaded mobile hero/footer graphics.
   ========================================================= */

.wwaed-approved-hero picture,
.wwaed-approved-footer picture{
    display:block!important;
    width:100%!important;
}
.wwaed-approved-hero picture img,
.wwaed-approved-footer picture img{
    display:block!important;
    width:100%!important;
    height:auto!important;
}

/* Mobile cards are intentionally simple and readable rather than compressed. */
@media(max-width:760px){
    .wwaed-home-card-band{
        background:#fff!important;
        padding:16px 12px 18px!important;
    }
    .wwaed-home-route-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    .wwaed-home-route-card{
        min-height:0!important;
        padding:18px 16px!important;
        border-radius:16px!important;
        display:block!important;
    }

    /* Remove floating circular icons on phone; the card title is enough
       and this prevents cramped rows. */
    .wwaed-home-route-card .wwaed-home-icon{
        display:none!important;
    }

    .wwaed-home-route-card h2{
        padding-top:0!important;
        margin:0 0 4px!important;
        text-align:left!important;
        font-size:20px!important;
        line-height:1.2!important;
    }
    .wwaed-home-route-card h3{
        margin:0 0 8px!important;
        text-align:left!important;
        font-size:13px!important;
        line-height:1.3!important;
    }
    .wwaed-home-route-card p{
        display:block!important;
        margin:0 0 12px!important;
        max-width:none!important;
        text-align:left!important;
        font-size:14px!important;
        line-height:1.45!important;
    }

    .wwaed-home-action-disabled{
        position:static!important;
        transform:none!important;
        width:100%!important;
        min-height:44px!important;
        padding:10px 12px!important;
        margin-top:6px!important;
        border-radius:10px!important;
        font-size:13px!important;
        white-space:normal!important;
    }

    .wwaed-home-route-card.dark{
        padding:18px 16px!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action{
        position:static!important;
        inset:auto!important;
        display:flex!important;
        width:100%!important;
        min-height:46px!important;
        margin-top:6px!important;
        background:#00ff01!important;
        color:#000!important;
        font-size:14px!important;
        border-radius:10px!important;
    }
    .wwaed-home-route-card.dark .wwaed-home-action span{
        position:static!important;
        transform:none!important;
        color:#000!important;
        font-size:18px!important;
    }
}

@media(max-width:390px){
    .wwaed-home-route-card{
        padding:16px 14px!important;
    }
    .wwaed-home-route-card h2{
        font-size:19px!important;
    }
    .wwaed-home-route-card p{
        font-size:13px!important;
    }
}

/* v1.2.7 section colour language: green remains the action colour */
:root{--wwaed-section-cpd:#2474d2;--wwaed-section-applications:#f28c28;--wwaed-section-candidates:#e0a126;--wwaed-section-courses:#d63a3a;--wwaed-section-membership:#7656b5;--wwaed-section-payments:#168c83;--wwaed-section-resources:#a94c93;--wwaed-section-agm:#6d7478;--wwaed-section-reporting:#3c7f52}
.wwaed-module-card.module-cpd{border-color:var(--wwaed-section-cpd)}
.wwaed-module-card.module-applicants{border-color:var(--wwaed-section-applications)}
.wwaed-module-card.module-candidate_progress{border-color:var(--wwaed-section-candidates)}
.wwaed-module-card.module-courses{border-color:var(--wwaed-section-courses)}
.wwaed-module-card.module-membership{border-color:var(--wwaed-section-membership)}
.wwaed-module-card.module-payments{border-color:var(--wwaed-section-payments)}
.wwaed-module-card.module-resources{border-color:var(--wwaed-section-resources)}
.wwaed-module-card.module-agm{border-color:var(--wwaed-section-agm)}
.wwaed-module-card.module-reporting{border-color:var(--wwaed-section-reporting)}
/* Keep all actions in the WWAED green rather than using section colours for buttons. */
.wwaed-module-card .wwaed-primary-button{background:var(--wwaed-green)!important;color:#000!important;border-color:#000!important}


/* =========================================================
   v1.3.5 – Coming Soon overlays + member login/registration
   ========================================================= */
.wwaed-module-card.state-coming_soon,
.wwaed-home-route-card.state-coming-soon{
    position:relative!important;
    overflow:hidden!important;
}
.wwaed-coming-soon-overlay{
    position:absolute!important;
    inset:0!important;
    z-index:50!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
    background:rgba(0,0,0,.84)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .18s ease,visibility .18s ease!important;
    border-radius:inherit!important;
}
.wwaed-coming-soon-graphic{
    width:min(230px,88%)!important;
    min-height:150px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:22px 18px!important;
    border:3px solid #00ff01!important;
    border-radius:22px!important;
    background:#050505!important;
    box-shadow:0 12px 34px rgba(0,0,0,.35)!important;
    transform:rotate(-2deg) scale(.96)!important;
}
.wwaed-coming-soon-graphic span{color:#fff!important;font-size:15px!important;font-weight:900!important;letter-spacing:.22em!important;line-height:1!important}
.wwaed-coming-soon-graphic strong{color:#00ff01!important;font-size:38px!important;font-weight:900!important;letter-spacing:.04em!important;line-height:1.05!important;margin:5px 0 10px!important}
.wwaed-coming-soon-graphic small{color:#fff!important;font-size:12px!important;font-weight:700!important;line-height:1.35!important}

/* Do not depend on pointer media-query detection: desktop hover/focus must always work. */
.wwaed-module-card.state-coming_soon:hover .wwaed-coming-soon-overlay,
.wwaed-module-card.state-coming_soon:focus .wwaed-coming-soon-overlay,
.wwaed-module-card.state-coming_soon:focus-within .wwaed-coming-soon-overlay,
.wwaed-home-route-card.state-coming-soon:hover .wwaed-coming-soon-overlay,
.wwaed-home-route-card.state-coming-soon:focus .wwaed-coming-soon-overlay,
.wwaed-home-route-card.state-coming-soon:focus-within .wwaed-coming-soon-overlay{
    opacity:1!important;
    visibility:visible!important;
}
@media (hover:none), (pointer:coarse){
    .wwaed-module-card.state-coming_soon .wwaed-coming-soon-overlay,
    .wwaed-home-route-card.state-coming-soon .wwaed-coming-soon-overlay{opacity:1!important;visibility:visible!important;background:rgba(0,0,0,.72)!important}
    .wwaed-coming-soon-graphic{min-height:120px!important;padding:16px 14px!important}
    .wwaed-coming-soon-graphic strong{font-size:32px!important}
}

.wwaed-member-login-header{display:flex;align-items:center;gap:24px;background:#050505;border:2px solid #00ff01;border-radius:22px;padding:22px 28px;margin-bottom:24px;color:#fff}
.wwaed-member-login-header img{width:165px;max-width:35%;height:auto;border-radius:8px}
.wwaed-member-login-header h1{margin:0 0 5px;color:#fff;font-size:30px;line-height:1.15}
.wwaed-member-login-header p{margin:0;color:#00ff01;font-weight:700}
.wwaed-login-links{margin:12px 0 20px}.wwaed-login-links a,.wwaed-secondary-link{font-weight:700;text-decoration:underline}
.wwaed-existing-member-register{margin-top:26px;padding:20px;border:2px solid #00ff01;border-radius:16px;background:#f7fff7}
.wwaed-existing-member-register h3{margin:0 0 8px}.wwaed-existing-member-register p{margin:0 0 15px}
.wwaed-existing-member-form label{display:block;font-weight:700;margin:0 0 15px}.wwaed-existing-member-form label span{color:#b00020}
.wwaed-existing-member-form input{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #bfc5cc;border-radius:9px;font-size:16px;box-sizing:border-box}
.wwaed-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wwaed-form-note{padding:12px 14px;background:#f2f4f5;border-radius:10px;line-height:1.45}
.wwaed-form-error,.wwaed-form-success{padding:12px 14px;border-radius:10px;margin:0 0 18px;font-weight:700}
.wwaed-form-error{background:#fff1f1;border:1px solid #d63638;color:#8a1517}.wwaed-form-success{background:#efffed;border:1px solid #2e8b36;color:#175d20}
.wwaed-existing-member-form .wwaed-secondary-link{display:inline-block;margin-left:16px}
@media(max-width:700px){.wwaed-member-login-header{padding:18px;gap:14px}.wwaed-member-login-header img{width:105px}.wwaed-member-login-header h1{font-size:22px}.wwaed-form-grid{grid-template-columns:1fr}.wwaed-existing-member-form .wwaed-secondary-link{display:block;margin:14px 0 0}}

/* v1.3.6 - Administration dashboard aligned with My WWAED */
.wwaed-admin-home{max-width:1460px}
.wwaed-admin-hero{
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    background:#000;color:#fff;border:2px solid #00ff01;border-radius:20px;
    padding:26px 28px;margin:18px 0 24px;box-shadow:0 12px 30px rgba(0,0,0,.14)
}
.wwaed-admin-hero h1{color:#fff;margin:4px 0 8px;font-size:34px}
.wwaed-admin-hero p{color:#fff;margin:0;max-width:760px;font-size:15px}
.wwaed-admin-hero .wwaed-eyebrow{color:#00ff01}
.wwaed-admin-dashboard-grid{align-items:stretch}
.wwaed-admin-card{
    position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:225px;
    padding:24px;background:#fff;color:#3f4743;border:2px solid #d8ddda;border-top:7px solid #00ff01;
    border-radius:18px;box-shadow:0 8px 22px rgba(0,0,0,.07);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.wwaed-admin-card h2{margin:0;color:inherit;font-size:25px;line-height:1.18}
.wwaed-admin-card p{flex:1;color:inherit;line-height:1.5;margin:18px 0}
.wwaed-admin-card .wwaed-module-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.wwaed-admin-card .wwaed-module-top>span{
    flex:0 0 auto;background:#00ff01;color:#000;font-size:12px;font-weight:800;
    border-radius:999px;padding:5px 10px;line-height:1
}
.wwaed-admin-card .wwaed-primary-button{align-self:flex-start;background:#00ff01!important;color:#000!important;border:2px solid #000!important}
.wwaed-admin-card.state-testing{background:#191919;color:#fff;border-color:#ffb300;border-top-color:#ffb300}
.wwaed-admin-card.state-testing .wwaed-module-top>span{background:#ffb300;color:#000}
.wwaed-admin-card.state-testing .wwaed-primary-button{background:#ffb300!important}
.wwaed-admin-card.state-attention{background:#191919;color:#fff;border-color:#ffb300;border-top-color:#ffb300}
.wwaed-admin-card.state-attention .wwaed-module-top>span{background:#ffb300;color:#000}
.wwaed-admin-card.state-coming_soon{opacity:.9;border-top-color:#555}
.wwaed-admin-card.state-coming_soon .wwaed-coming-soon-overlay{opacity:0;visibility:hidden}
.wwaed-admin-card.state-coming_soon:hover .wwaed-coming-soon-overlay,
.wwaed-admin-card.state-coming_soon:focus .wwaed-coming-soon-overlay,
.wwaed-admin-card.state-coming_soon:focus-within .wwaed-coming-soon-overlay{opacity:1;visibility:visible}
.wwaed-admin-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.11)}
.wwaed-admin-count{min-width:24px;text-align:center}
.wwaed-admin-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:18px 0 22px}
.wwaed-admin-page-head h1{margin:4px 0 8px}
.wwaed-admin-page-head p{max-width:820px;margin:0}
.wwaed-admin-return{font-weight:700;text-decoration:none;margin-top:12px}
.wwaed-admin-empty{background:#fff;border:2px solid #00ff01;border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:6px;max-width:760px}
.wwaed-admin-empty strong{font-size:22px;color:#111}
.wwaed-registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}
.wwaed-registration-card{background:#fff;border:2px solid #ffb300;border-top:7px solid #ffb300;border-radius:18px;padding:24px;box-shadow:0 8px 22px rgba(0,0,0,.07)}
.wwaed-registration-card h2{margin:0;font-size:24px}.wwaed-registration-card .wwaed-module-top{display:flex;justify-content:space-between;gap:12px}.wwaed-registration-card .wwaed-module-top span{background:#ffb300;color:#000;font-weight:800;font-size:12px;border-radius:999px;padding:5px 10px;height:max-content}
.wwaed-registration-approve{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.wwaed-registration-approve label{font-weight:700}.wwaed-registration-approve select{display:block;width:100%;margin-top:6px}.wwaed-registration-approve .wwaed-primary-button{grid-column:1/-1;width:max-content}
.wwaed-registration-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.wwaed-registration-actions form{margin:0}
@media (max-width:900px){.wwaed-registration-grid{grid-template-columns:1fr}.wwaed-admin-hero,.wwaed-admin-page-head{flex-direction:column}.wwaed-registration-approve{grid-template-columns:1fr}.wwaed-registration-approve .wwaed-primary-button{grid-column:auto}}
@media (hover:none),(pointer:coarse){.wwaed-admin-card.state-coming_soon .wwaed-coming-soon-overlay{opacity:1!important;visibility:visible!important;background:rgba(0,0,0,.72)!important}}


/* v1.4.1 member report display */
.wwaed-report-actions{display:flex;justify-content:flex-end;margin:0 0 18px}
.wwaed-report-actions button{border:0;cursor:pointer}
.wwaed-print-report{background:#fff;border:1px solid #d9d9d9;border-radius:18px;padding:28px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.wwaed-print-report>header{border-bottom:3px solid #00ff01;margin-bottom:22px;padding-bottom:14px}
.wwaed-print-report>header h1{margin:0 0 4px;font-size:28px;color:#111}
.wwaed-print-report>header p{margin:0;color:#555}
.wwaed-report-table{width:100%;border-collapse:collapse;font-size:15px}
.wwaed-report-table th,.wwaed-report-table td{border-bottom:1px solid #ddd;padding:11px 10px;text-align:left;vertical-align:top}
.wwaed-report-table th{font-weight:700;color:#222}
.wwaed-report-table thead th{background:#f3f3f3}
.wwaed-report-table tfoot th{border-top:2px solid #222;border-bottom:0}
@media (max-width:700px){.wwaed-print-report{padding:18px}.wwaed-report-table{font-size:13px}.wwaed-report-table th,.wwaed-report-table td{padding:8px 5px}}
@media print{
  body *{visibility:hidden!important}
  .wwaed-print-report,.wwaed-print-report *{visibility:visible!important}
  .wwaed-print-report{position:absolute;left:0;top:0;width:100%;border:0;box-shadow:none;padding:0}
  .wwaed-no-print,.wwaed-report-actions,#wpadminbar{display:none!important}
  @page{margin:15mm}
}

/* v1.5.3 – unmistakable selected-record edit state */
.wwaed-edit-record-banner{border:2px solid #20f000;background:#fff;padding:18px 20px;border-radius:10px;margin:10px 0 18px}
.wwaed-edit-record-banner span{font-size:12px;font-weight:800;letter-spacing:.08em}
.wwaed-edit-record-banner h1{margin:5px 0 4px}
.wwaed-edit-record-banner p{margin:0;color:#555}

/* v1.5.10 – consistent Administration Home action buttons */
.wwaed-admin-dashboard-grid .wwaed-primary-button{
    width:auto!important;
    height:auto!important;
    min-width:150px;
    border-radius:999px!important;
    padding:11px 18px!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    white-space:nowrap;
}

/* v1.6.2 - distinct candidate-facing Cat 1 Theory Waiting Room */
.wwaed-cat1-waiting-room{max-width:1180px;margin:0 auto;padding-bottom:36px}
.wwaed-waiting-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#050505;color:#fff;border:2px solid #00ff01;border-radius:22px;padding:28px 30px;margin:0 0 20px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.wwaed-waiting-hero h1{margin:4px 0 8px;color:#fff;font-size:36px;line-height:1.1}.wwaed-waiting-hero p{margin:0;max-width:760px;color:#f2f2f2;line-height:1.5}.wwaed-waiting-hero .wwaed-eyebrow{color:#00ff01;font-weight:800;letter-spacing:.08em}
.wwaed-waiting-badge{flex:0 0 auto;background:#00ff01;color:#000;font-weight:900;letter-spacing:.08em;border-radius:999px;padding:11px 18px}
.wwaed-waiting-status{display:grid;grid-template-columns:2fr 1fr;gap:20px;border:2px solid #ff8a00;border-radius:18px;padding:24px;background:#fff8ed;margin-bottom:20px}.wwaed-waiting-label{display:inline-block;background:#ff8a00;color:#000;font-size:12px;font-weight:900;letter-spacing:.06em;border-radius:999px;padding:6px 10px}.wwaed-waiting-status h2{font-size:27px;margin:14px 0 8px}.wwaed-waiting-status p{margin:0;line-height:1.55}.wwaed-waiting-person{background:#fff;border-radius:14px;padding:16px 18px;display:grid;grid-template-columns:1fr;align-content:center;gap:3px;border:1px solid #efd1ad}.wwaed-waiting-person span{font-size:12px;color:#666;text-transform:uppercase;font-weight:800;margin-top:7px}.wwaed-waiting-person strong{font-size:16px;color:#111}
.wwaed-waiting-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 24px}.wwaed-waiting-progress>div{position:relative;background:#f2f2f2;border-radius:12px;padding:15px 14px 14px 50px;min-height:58px}.wwaed-waiting-progress b{position:absolute;left:14px;top:15px;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#000;color:#00ff01}.wwaed-waiting-progress span{display:block;font-weight:800;color:#111}.wwaed-waiting-progress small{display:block;color:#666;margin-top:2px}.wwaed-waiting-progress .current{background:#050505;border:2px solid #00ff01}.wwaed-waiting-progress .current span,.wwaed-waiting-progress .current small{color:#fff}.wwaed-waiting-progress .done b{background:#00ff01;color:#000}
.wwaed-waiting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.wwaed-waiting-card{background:#fff;border:2px solid #e1e1e1;border-top:6px solid #00ff01;border-radius:17px;padding:22px;box-shadow:0 7px 20px rgba(0,0,0,.05)}.wwaed-waiting-card-wide{grid-column:1/-1}.wwaed-waiting-card-head span{font-size:11px;font-weight:900;letter-spacing:.09em;color:#5f655f}.wwaed-waiting-card-head h2{margin:4px 0 14px;font-size:23px;color:#111}.wwaed-waiting-card p,.wwaed-waiting-card li{line-height:1.55}.wwaed-waiting-card ul{margin:8px 0 0 20px}.wwaed-waiting-callout{display:flex;flex-direction:column;gap:3px;background:#f5f5f5;border-left:5px solid #ff8a00;border-radius:10px;padding:15px 17px}.wwaed-waiting-callout.success{border-left-color:#00c800;background:#f2fff1}.wwaed-waiting-callout strong{font-size:17px}.wwaed-waiting-callout span{color:#555;line-height:1.45}.wwaed-waiting-mini{display:flex;justify-content:space-between;gap:15px;background:#f5f5f5;border-radius:10px;padding:13px 14px;margin-top:16px}.wwaed-waiting-mini span{color:#666}.wwaed-waiting-resources{display:grid;gap:10px}.wwaed-waiting-resource{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #ddd;border-radius:12px;padding:13px 14px}.wwaed-waiting-resource strong,.wwaed-waiting-resource span{display:block}.wwaed-waiting-resource span{color:#666;font-size:14px;margin-top:3px}.wwaed-waiting-history{padding:14px 16px;background:#f6f6f6;border-radius:10px;color:#555}
@media(max-width:800px){.wwaed-waiting-hero,.wwaed-waiting-status{grid-template-columns:1fr;display:grid}.wwaed-waiting-badge{justify-self:start}.wwaed-waiting-progress{grid-template-columns:1fr 1fr}.wwaed-waiting-grid{grid-template-columns:1fr}.wwaed-waiting-card-wide{grid-column:auto}}
@media(max-width:520px){.wwaed-waiting-progress{grid-template-columns:1fr}.wwaed-waiting-hero h1{font-size:29px}.wwaed-waiting-resource{align-items:flex-start;flex-direction:column}}

/* v1.6.3 - Theory revision and exam support */
.wwaed-rw-request{margin-top:16px}
.wwaed-revision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0 18px}
.wwaed-revision-item{border:1px solid #e5e7eb;border-radius:12px;padding:16px;background:#fff}
.wwaed-revision-item strong{display:block;font-size:16px;margin-bottom:7px}
.wwaed-revision-item span{display:block;line-height:1.55;color:#374151}
@media(max-width:760px){.wwaed-revision-grid{grid-template-columns:1fr}}


/* v1.6.4 - stronger Waiting Room box headings */
.wwaed-waiting-card-head h2{font-size:27px;font-weight:800;line-height:1.2;margin:5px 0 16px}
.wwaed-waiting-card-head span{font-size:12px;font-weight:900}
.wwaed-revision-item strong{font-size:18px;font-weight:800;line-height:1.3;margin-bottom:8px}

/* v1.6.7 Waiting Room visual hierarchy */
.wwaed-waiting-card-head h2{font-size:30px;font-weight:900;line-height:1.15;margin:6px 0 17px;color:#0b0b0b}
.wwaed-waiting-card-head span{font-size:13px;font-weight:900;letter-spacing:.095em}
@media(max-width:800px){.wwaed-waiting-card-head h2{font-size:26px}}
