.lara-account{--lara-primary:#7367f0;--lara-gradient-start:#d878c1;--lara-gradient-end:#59aaf2;font-family:inherit;color:#4b4b5a;width:100%;max-width:1440px;margin:0 auto;box-sizing:border-box}.lara-account *{box-sizing:border-box}.lara-profile-card,.lara-card{background:#fff;border:1px solid #ebeaf0;border-radius:10px;box-shadow:0 3px 14px rgba(35,35,45,.08);overflow:hidden;margin:0 0 24px}.lara-cover{height:245px;background:linear-gradient(120deg,var(--lara-gradient-start),#d943a4 42%,#9d86e8 68%,var(--lara-gradient-end))}.lara-profile-body{min-height:104px;padding:20px 24px 28px 165px;display:flex;align-items:center;gap:22px;position:relative}.lara-avatar{position:absolute;left:30px;bottom:27px;width:120px;height:120px;border:5px solid #fff;border-radius:7px;object-fit:cover;background:#eee;box-shadow:0 2px 8px rgba(0,0,0,.1)}.lara-profile-copy{min-width:0}.lara-profile-copy h5,.lara-card h5{font-size:20px;line-height:1.3;margin:0 0 12px;color:#454452;font-weight:500}.lara-profile-meta{display:flex;gap:26px;flex-wrap:wrap;color:#6e6d7a;font-size:14px}.lara-meta-item{display:inline-flex;align-items:center;gap:8px;min-width:0}.lara-meta-item>span{min-width:0}.lara-meta-icon{width:20px;height:20px;flex:0 0 20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.lara-status{margin-left:auto;display:inline-flex;align-items:center;gap:8px;background:var(--lara-primary);color:#fff;border-radius:6px;padding:11px 20px;font-weight:600;box-shadow:0 4px 10px color-mix(in srgb,var(--lara-primary) 30%,transparent)}.lara-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.lara-tabs button{appearance:none;border:1px solid #dedde6;background:#fff;color:#5d5c69;border-radius:7px;padding:10px 17px;font:inherit;font-weight:600;cursor:pointer}.lara-tabs button.is-active{background:var(--lara-primary);border-color:var(--lara-primary);color:#fff}.lara-panel[hidden]{display:none!important}.lara-card{padding:28px 24px}.lara-card h5{margin-bottom:26px}.lara-card form>label,.lara-grid>label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#4d4c59}.lara-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px;margin-bottom:26px}.lara-grid .lara-full{grid-column:1/-1;max-width:none;width:100%}.lara-card input[type=text],.lara-card input[type=email],.lara-card input[type=tel],.lara-card input[type=password],.lara-card .lara-grid select{width:100%;min-height:42px;border:1px solid #d4d2dc;border-radius:6px;background:#fff;padding:9px 13px;font:inherit;color:#4b4b5a;outline:0}.lara-card .lara-grid select:focus{border-color:var(--lara-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--lara-primary) 14%,transparent)}.lara-card input:focus{border-color:var(--lara-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--lara-primary) 14%,transparent)}.lara-button,.lara-danger-button,.lara-restricted-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;padding:11px 20px;text-decoration:none!important;font:inherit;font-weight:600;cursor:pointer}.lara-button{background:var(--lara-primary);color:#fff!important;box-shadow:0 4px 10px color-mix(in srgb,var(--lara-primary) 28%,transparent)}.lara-button-small{padding:9px 14px;font-size:13px}.lara-danger-button{background:#ff9fa6;color:#fff}.lara-danger-button:disabled{opacity:.55;cursor:not-allowed}.lara-avatar-edit{display:flex;align-items:center;gap:18px;margin:0 0 26px}.lara-avatar-edit img{width:84px;height:84px;border-radius:8px;object-fit:cover;background:#eee}.lara-avatar-edit>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lara-avatar-edit small{width:100%;color:#73717e}.lara-inline-check,.lara-confirm{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important}.lara-delete-card form{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.lara-delete-card form>label:first-of-type{width:min(100%,660px)}.lara-warning{display:flex;flex-direction:column;gap:7px;background:#fff1df;color:#ff9138;border-radius:7px;padding:18px 16px;margin-bottom:26px}.lara-password-wrap{display:flex;position:relative}.lara-password-wrap input{padding-right:60px!important}.lara-password-wrap button{position:absolute;right:4px;top:4px;bottom:4px;border:0;background:transparent;color:#6f6d79;cursor:pointer}.lara-requirements{margin:0 0 24px;color:#6d6b78}.lara-requirements ul{margin:12px 0 0;padding-left:20px}.lara-requirements li{margin:8px 0}.lara-plan-layout{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}.lara-plan-card h6{font-size:16px;margin:0 0 13px}.lara-role-list{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 15px}.lara-role-list span{background:color-mix(in srgb,var(--lara-primary) 14%,#fff);color:var(--lara-primary);border-radius:999px;padding:6px 11px;font-size:13px;font-weight:600}.lara-plan-notice{display:flex;flex-direction:column;gap:8px;background:#fff1df;color:#ff9138;border-radius:7px;padding:18px}.lara-message{padding:14px 16px;border-radius:7px;margin:0 0 18px}.lara-message-success{background:#e9f8ef;color:#25824b}.lara-message-error{background:#fdebec;color:#b63a43}.lara-login-card{text-align:center;padding:48px 24px}.lara-login-card p{margin:0 0 22px}.lara-restricted{border:1px solid #e5e3eb;border-radius:9px;background:#fff;padding:28px;box-shadow:0 3px 14px rgba(35,35,45,.08)}.card .lara-restricted{border:0;border-radius:0;background:transparent;padding:20px;box-shadow:none}.lara-restricted h5{font-size:20px;margin:0 0 10px}.lara-restricted-button{background:#7367f0;color:#fff!important;margin-top:8px}@media(max-width:767px){.lara-cover{height:175px}.lara-profile-body{padding:70px 18px 20px;display:block}.lara-avatar{left:18px;bottom:auto;top:-55px;width:105px;height:105px}.lara-status{position:absolute;right:18px;top:16px}.lara-profile-meta{gap:10px 18px}.lara-grid,.lara-plan-layout{grid-template-columns:1fr}.lara-grid .lara-full{max-width:none}.lara-avatar-edit{align-items:flex-start}.lara-card{padding:24px 18px}}@media(max-width:575px){.lara-account{width:100%;margin:0}.lara-profile-card,.lara-card{border-radius:7px}.lara-cover{height:140px}.lara-profile-body{padding-top:68px}.lara-status{padding:8px 12px;font-size:13px}.lara-tabs{display:grid;grid-template-columns:1fr 1fr 1fr}.lara-tabs button{padding:9px 6px;font-size:13px}.lara-avatar-edit{flex-direction:column}.lara-avatar-edit>div{width:100%}}

/* Full-width account layout aligned to the theme's upper menu. */
.lara-account[data-lara-account]{--lara-bleed-left:0px!important;--lara-bleed-right:0px!important;--lara-page-bg:#f8f7fa;position:relative;z-index:0;display:block;max-width:none;width:100%;margin-left:0!important;margin-right:0!important;background:transparent}
.lara-account-host{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.lara-avatar-initials{display:flex!important;align-items:center;justify-content:center;background:var(--lara-primary)!important;overflow:hidden;color:#fff;text-indent:0}
.lara-avatar-initials>span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:0;background:transparent;color:#fff;font-size:48px;font-weight:600;line-height:1;text-transform:uppercase}
.lara-card input[readonly]{background:#f3f2f6;color:#6d6b78;cursor:not-allowed}
.lara-card input[readonly]:focus{border-color:#d4d2dc;box-shadow:none}
@media(max-width:767px){.lara-avatar-initials>span{font-size:42px}}

/* WooCommerce customer data inside the Linos account interface. */
.lara-tabs a{appearance:none;border:1px solid #dedde6;background:#fff;color:#5d5c69;border-radius:7px;padding:10px 17px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center}
.lara-tabs a:hover{color:var(--lara-primary);border-color:color-mix(in srgb,var(--lara-primary) 45%,#dedde6)}
.lara-tabs a.is-active{background:var(--lara-primary);border-color:var(--lara-primary);color:#fff!important}
.lara-woocommerce-card{overflow:visible}
.lara-woocommerce-card .lara-woocommerce-content{width:100%;min-width:0}
.lara-woocommerce-card .woocommerce-MyAccount-navigation{display:none!important}
.lara-woocommerce-card .woocommerce-MyAccount-content{float:none!important;width:100%!important}
.lara-woocommerce-card table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #dedde6;border-radius:8px;overflow:hidden;background:#fff}
.lara-woocommerce-card table th,.lara-woocommerce-card table td{padding:13px 14px;text-align:left;border:0;border-bottom:1px solid #e7e5ec;vertical-align:middle}
.lara-woocommerce-card table tr:last-child td{border-bottom:0}
.lara-woocommerce-card table th{font-size:13px;color:#6a6875;font-weight:600;background:#faf9fb}
.lara-woocommerce-card table td{color:#5d5b68}
.lara-woocommerce-card .woocommerce-button,.lara-woocommerce-card .button,.lara-woocommerce-card button.button,.lara-woocommerce-card input.button{display:inline-flex!important;align-items:center;justify-content:center;border:0!important;border-radius:6px!important;background:var(--lara-primary)!important;color:#fff!important;padding:9px 15px!important;font:inherit!important;font-weight:600!important;text-decoration:none!important;box-shadow:0 4px 10px color-mix(in srgb,var(--lara-primary) 24%,transparent)!important}
.lara-woocommerce-card .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0}
.lara-woocommerce-card .woocommerce-Address{float:none!important;width:auto!important;border:1px solid #e5e3eb;border-radius:8px;padding:20px;background:#fff}
.lara-woocommerce-card .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}
.lara-woocommerce-card .woocommerce-Address-title h2,.lara-woocommerce-card .woocommerce-Address-title h5{font-size:16px;line-height:1.35;margin:0;color:#454452;font-weight:600}
.lara-woocommerce-card address{font-style:normal;line-height:1.7;color:#6d6b78}
.lara-woocommerce-card form .form-row{margin:0 0 18px}
.lara-woocommerce-card form label{display:block;margin:0 0 7px;font-size:13px;color:#4d4c59}
.lara-woocommerce-card form input.input-text,.lara-woocommerce-card form select,.lara-woocommerce-card form textarea{width:100%;min-height:42px;border:1px solid #d4d2dc;border-radius:6px;background:#fff;padding:9px 13px;font:inherit;color:#4b4b5a;outline:0}
.lara-woocommerce-card form textarea{min-height:110px}
.lara-woocommerce-card form input:focus,.lara-woocommerce-card form select:focus,.lara-woocommerce-card form textarea:focus{border-color:var(--lara-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--lara-primary) 14%,transparent)}
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-info,body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-message,body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-error{margin:0;padding:16px 18px;border:1px solid #e4e2e9;border-left:4px solid var(--lara-primary);border-radius:7px;background:#fff;list-style:none}
.lara-woocommerce-card .woocommerce-customer-details,.lara-woocommerce-card .woocommerce-order-details{margin-top:24px}
.lara-woocommerce-card .woocommerce-customer-details address + .woocommerce-column__title,.lara-woocommerce-card .woocommerce-customer-details address ~ .woocommerce-column__title,.lara-woocommerce-card .woocommerce-customer-details .woocommerce-columns + .woocommerce-column__title,.lara-woocommerce-card .woocommerce-customer-details .woocommerce-column + .woocommerce-column__title,.lara-woocommerce-card .woocommerce-customer-details + .woocommerce-column__title,.lara-woocommerce-card .woocommerce-customer-details + h2{margin-top:24px!important}
.lara-woocommerce-card mark{background:color-mix(in srgb,var(--lara-primary) 14%,#fff);color:var(--lara-primary);border-radius:4px;padding:2px 5px}
@media(max-width:767px){.lara-woocommerce-card{padding:22px 16px}.lara-woocommerce-card table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.lara-woocommerce-card .woocommerce-Addresses{grid-template-columns:1fr}}
@media(max-width:575px){.lara-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.lara-tabs a{padding:9px 6px;font-size:13px;text-align:center}.lara-woocommerce-card table th,.lara-woocommerce-card table td{padding:11px 10px}}

/* v1.2.1: keep WooCommerce address cards aligned and make account tabs readable on narrow screens. */
.lara-addresses-card .woocommerce-Addresses{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
    align-items:stretch!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
}
.lara-addresses-card .woocommerce-Addresses::before,
.lara-addresses-card .woocommerce-Addresses::after{
    display:none!important;
    content:none!important;
}
.lara-addresses-card .woocommerce-Addresses>.woocommerce-Address{
    float:none!important;
    clear:none!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    padding:12px 20px 20px!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
}
.lara-addresses-card .woocommerce-Addresses>.u-column1{
    grid-column:1!important;
    grid-row:1!important;
}
.lara-addresses-card .woocommerce-Addresses>.u-column2{
    grid-column:2!important;
    grid-row:1!important;
}
.lara-addresses-card .woocommerce-Address-title{
    width:100%!important;
}
.lara-addresses-card .woocommerce-Address address{
    margin:0!important;
}

@media(max-width:767px){
    .lara-addresses-card .woocommerce-Addresses{
        grid-template-columns:minmax(0,1fr)!important;
    }
    .lara-addresses-card .woocommerce-Addresses>.u-column1,
    .lara-addresses-card .woocommerce-Addresses>.u-column2{
        grid-column:1!important;
        grid-row:auto!important;
    }
}

@media(max-width:575px){
    .lara-tabs{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
        width:100%!important;
    }
    .lara-tabs a,
    .lara-tabs button{
        width:100%!important;
        min-width:0!important;
        min-height:44px!important;
        height:auto!important;
        padding:9px 8px!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:normal!important;
        word-break:normal!important;
        line-height:1.25!important;
        text-align:center!important;
    }
}

@media(max-width:360px){
    .lara-tabs{
        grid-template-columns:minmax(0,1fr)!important;
    }
}

/* v1.2.2: mobile order history as separate, readable order cards. */
@media(max-width:768px){
    .lara-orders-card .woocommerce-orders-table{
        display:block!important;
        width:100%!important;
        max-width:none!important;
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }
    .lara-orders-card .woocommerce-orders-table thead{
        display:none!important;
    }
    .lara-orders-card .woocommerce-orders-table tbody{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:14px!important;
        width:100%!important;
    }
    .lara-orders-card .woocommerce-orders-table tbody tr,
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__row{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        border:1px solid #dedde6!important;
        border-radius:8px!important;
        background:#fff!important;
        overflow:hidden!important;
    }
    .lara-orders-card .woocommerce-orders-table tbody td,
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__cell{
        display:grid!important;
        grid-template-columns:86px minmax(0,1fr)!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:11px 12px!important;
        border:0!important;
        border-bottom:1px solid #e7e5ec!important;
        text-align:left!important;
        white-space:normal!important;
        overflow-wrap:anywhere!important;
    }
    .lara-orders-card .woocommerce-orders-table tbody td:last-child,
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__cell:last-child{
        border-bottom:0!important;
    }
    .lara-orders-card .woocommerce-orders-table tbody td::before,
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__cell::before{
        content:attr(data-title) ":"!important;
        display:block!important;
        float:none!important;
        position:static!important;
        width:auto!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        color:#6a6875!important;
        font-weight:600!important;
        line-height:1.35!important;
        text-align:left!important;
    }
    .lara-orders-card .woocommerce-orders-table td>*{
        min-width:0!important;
    }
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .button,
    .lara-orders-card .woocommerce-orders-table td[data-title="Actions"] .button{
        justify-self:start!important;
        width:auto!important;
        min-width:72px!important;
        margin:0!important;
    }
}

@media(max-width:420px){
    .lara-orders-card .woocommerce-orders-table tbody td,
    .lara-orders-card .woocommerce-orders-table .woocommerce-orders-table__cell{
        grid-template-columns:76px minmax(0,1fr)!important;
        gap:8px!important;
        padding:10px!important;
    }
}

/* v1.2.3: use WooCommerce's natural address-title flow. */
.lara-addresses-card .woocommerce-Address-title{
    display:block!important;
}
.lara-addresses-card .woocommerce-Address-title .edit{
    float:none!important;
}

/* v1.2.4: align the signed-out account card with the theme's upper navbar. */
.lara-account[data-lara-logged-out]{
    width:calc(100% + var(--lara-bleed-left,0px) + var(--lara-bleed-right,0px))!important;
    max-width:none!important;
    margin-left:calc(-1 * var(--lara-bleed-left,0px))!important;
    margin-right:calc(-1 * var(--lara-bleed-right,0px))!important;
}
@media(max-width:575px){
    .lara-account[data-lara-logged-out]{
        width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
    }
}

/* v1.2.7: normalize every WooCommerce notice inside the custom account area. */
body:not(.mws-enabled) .lara-account .woocommerce-notices-wrapper{
    width:100%!important;
    margin:0 0 18px!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-notices-wrapper:empty{
    display:none!important;
    margin:0!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-info,
body:not(.mws-enabled) .lara-account .woocommerce-message,
body:not(.mws-enabled) .lara-account .woocommerce-error{
    position:relative!important;
    clear:both!important;
    width:100%!important;
    min-height:0!important;
    margin:0 0 18px!important;
    padding:14px 16px!important;
    border:1px solid #e4e2e9!important;
    border-radius:7px!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#5d5b68!important;
    font:inherit!important;
    line-height:1.5!important;
    text-align:left!important;
    list-style:none!important;
}
body:not(.mws-enabled) .lara-account .lara-woocommerce-content>.woocommerce-info:last-child,
body:not(.mws-enabled) .lara-account .lara-woocommerce-content>.woocommerce-message:last-child,
body:not(.mws-enabled) .lara-account .lara-woocommerce-content>.woocommerce-error:last-child{
    margin-bottom:0!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-info{
    border-left:4px solid var(--lara-primary)!important;
    background:color-mix(in srgb,var(--lara-primary) 4%,#fff)!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-message{
    border-left:4px solid #28a866!important;
    background:#f6fcf8!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-error{
    border-left:4px solid #d94a53!important;
    background:#fff7f7!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-info::before,
body:not(.mws-enabled) .lara-account .woocommerce-message::before,
body:not(.mws-enabled) .lara-account .woocommerce-error::before,
body:not(.mws-enabled) .lara-account .woocommerce-info::after,
body:not(.mws-enabled) .lara-account .woocommerce-message::after,
body:not(.mws-enabled) .lara-account .woocommerce-error::after{
    display:none!important;
    content:none!important;
}
body:not(.mws-enabled) .lara-account div.woocommerce-info,
body:not(.mws-enabled) .lara-account div.woocommerce-message{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    flex-wrap:wrap!important;
}
body:not(.mws-enabled) .lara-account div.woocommerce-info>p,
body:not(.mws-enabled) .lara-account div.woocommerce-message>p{
    flex:1 1 320px!important;
    min-width:0!important;
    margin:0!important;
}
body:not(.mws-enabled) .lara-account .woocommerce-info a,
body:not(.mws-enabled) .lara-account .woocommerce-message a,
body:not(.mws-enabled) .lara-account .woocommerce-error a{
    order:2!important;
    float:none!important;
    flex:0 0 auto!important;
    margin:0 0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    border:0!important;
    border-radius:6px!important;
    background:var(--lara-primary)!important;
    color:#fff!important;
    padding:9px 15px!important;
    font:inherit!important;
    font-weight:600!important;
    line-height:1.25!important;
    text-decoration:none!important;
    white-space:normal!important;
    box-shadow:0 4px 10px color-mix(in srgb,var(--lara-primary) 24%,transparent)!important;
}
body:not(.mws-enabled) .lara-account ul.woocommerce-error{
    display:block!important;
    padding-left:16px!important;
}
body:not(.mws-enabled) .lara-account ul.woocommerce-error>li{
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}
body:not(.mws-enabled) .lara-account ul.woocommerce-error>li+li{
    margin-top:6px!important;
}

/* Newer WooCommerce block-style notices, if an extension renders one here. */
body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner{
    width:100%!important;
    margin:0 0 18px!important;
    padding:14px 16px!important;
    border:1px solid #e4e2e9!important;
    border-radius:7px!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#5d5b68!important;
    align-items:center!important;
    gap:12px!important;
}
body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner>.wc-block-components-notice-banner__content{
    min-width:0!important;
    margin:0!important;
}

body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    min-height:38px!important;
    padding:9px 15px!important;
    border:0!important;
    border-radius:6px!important;
    background:var(--lara-primary)!important;
    color:#fff!important;
    font-weight:600!important;
    line-height:1.25!important;
    text-decoration:none!important;
}
body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner.is-info{
    border-left:4px solid var(--lara-primary)!important;
    background:color-mix(in srgb,var(--lara-primary) 4%,#fff)!important;
}
body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner.is-success{
    border-left:4px solid #28a866!important;
    background:#f6fcf8!important;
}
body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner.is-error{
    border-left:4px solid #d94a53!important;
    background:#fff7f7!important;
}

@media(max-width:767px){
    body:not(.mws-enabled) .lara-account div.woocommerce-info,
    body:not(.mws-enabled) .lara-account div.woocommerce-message{
        align-items:flex-start!important;
    }
    body:not(.mws-enabled) .lara-account .woocommerce-info a,
    body:not(.mws-enabled) .lara-account .woocommerce-message a,
    body:not(.mws-enabled) .lara-account .woocommerce-error a{
        width:auto!important;
        max-width:100%!important;
        margin:2px 0 0!important;
    }
}

/* v1.2.10: guaranteed order-detail spacing and no focus ring on Woo notice containers. */
.lara-woocommerce-card .woocommerce-customer-details address + h2,
.lara-woocommerce-card .woocommerce-customer-details address ~ h2,
.lara-woocommerce-card .woocommerce-customer-details > h2:not(:first-child),
.lara-woocommerce-card .woocommerce-customer-details + h2,
.lara-woocommerce-card .woocommerce-customer-details + .woocommerce-column__title,
.lara-woocommerce-card .woocommerce-customer-details + section > h2:first-child,
.lara-woocommerce-card .woocommerce-customer-details + div > h2:first-child,
.lara-woocommerce-card .mws-additional-information-heading {
    clear: both !important;
    margin-top: 0 !important;
    padding-top: 32px !important;
}
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-message,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-info,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-error,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-message:focus,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-info:focus,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-error:focus,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-message:focus-visible,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-info:focus-visible,
body:not(.mws-enabled) .lara-woocommerce-card .woocommerce-error:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}


/* v1.2.11: centre WooCommerce account notices on small screens when the
 * dedicated Mathematics WooCommerce Styling plugin is not active. */
@media(max-width:767px){
    body:not(.mws-enabled) .lara-account .woocommerce-info,
    body:not(.mws-enabled) .lara-account .woocommerce-message,
    body:not(.mws-enabled) .lara-account .woocommerce-error,
    body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        justify-items:center!important;
        align-items:center!important;
        gap:12px!important;
        text-align:center!important;
    }
    body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner>.wc-block-components-notice-banner__content{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        justify-items:center!important;
        gap:12px!important;
        width:100%!important;
        text-align:center!important;
    }
    body:not(.mws-enabled) .lara-account .woocommerce-error>li{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        justify-items:center!important;
        gap:12px!important;
        width:100%!important;
        text-align:center!important;
    }
    body:not(.mws-enabled) .lara-account .woocommerce-info a,
    body:not(.mws-enabled) .lara-account .woocommerce-message a,
    body:not(.mws-enabled) .lara-account .woocommerce-error a,
    body:not(.mws-enabled) .lara-account .wc-block-components-notice-banner a{
        position:static!important;
        float:none!important;
        justify-self:center!important;
        align-self:center!important;
        width:max-content!important;
        max-width:100%!important;
        margin:0 auto!important;
        text-align:center!important;
    }
}

/* v1.2.12: tighter spacing around the two address cards on desktop. */
@media(min-width:768px){
    .lara-addresses-card{
        padding-left:16px!important;
        padding-right:16px!important;
    }
    .lara-addresses-card .woocommerce-Addresses{
        gap:12px!important;
    }
}


/* v1.2.13: WooCommerce address-card titles are H5 and sit closer to the card top. */
.lara-addresses-card .woocommerce-Address-title h5{
    margin:0!important;
}

/* v1.2.14: icon rows for the customer name and postal address in My Account > Addresses. */
.lara-addresses-card address.lara-address-enhanced{
    font-style:normal!important;
}
.lara-addresses-card address.lara-address-enhanced .lara-address-row{
    display:flex!important;
    align-items:flex-start!important;
    gap:8px!important;
    margin:0 0 8px!important;
    padding:0!important;
    line-height:1.45!important;
    position:relative!important;
}
.lara-addresses-card address.lara-address-enhanced .lara-address-row:last-child{
    margin-bottom:0!important;
}
.lara-addresses-card address.lara-address-enhanced .lara-address-row::before{
    content:""!important;
    display:block!important;
    flex:0 0 16px!important;
    width:16px!important;
    height:16px!important;
    margin:2px 0 0!important;
    background-color:currentColor!important;
    opacity:.82;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:center;
    mask-position:center;
    -webkit-mask-size:16px 16px;
    mask-size:16px 16px;
}
.lara-addresses-card address.lara-address-enhanced .lara-address-name::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}
.lara-addresses-card address.lara-address-enhanced .lara-address-postal::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 12-8 12S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 12-8 12S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}
.lara-addresses-card address.lara-address-enhanced .lara-address-text{
    display:block;
    min-width:0;
}

/* v1.2.18: member quiz attempt history. */
.lara-quiz-results-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin:0 0 22px;
}
.lara-quiz-results-heading h5{
    margin:0 0 7px!important;
}
.lara-quiz-results-heading p{
    margin:0;
    color:#777582;
    font-size:14px;
    line-height:1.55;
}
.lara-quiz-total-attempts,
.lara-quiz-group-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #dedde6;
    border-radius:999px;
    background:#f8f8fb;
    color:#666472;
    padding:7px 11px;
    font-size:13px;
    line-height:1;
    white-space:nowrap;
}
.lara-quiz-empty{
    padding:22px;
    border:1px dashed #d9d7e2;
    border-radius:8px;
    background:#fafafd;
    color:#757381;
    text-align:center;
}
.lara-quiz-empty-small{
    padding:16px;
}
.lara-quiz-groups{
    display:grid;
    gap:20px;
}
.lara-quiz-group{
    overflow:hidden;
    border:1px solid #e2e0e9;
    border-radius:9px;
    background:#fff;
}
.lara-quiz-group-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:16px 18px;
    border-bottom:1px solid #eceaf1;
    background:#f8f8fb;
}
.lara-quiz-group-head h6{
    margin:0 0 3px;
    color:#474653;
    font-size:16px;
    line-height:1.35;
}
.lara-quiz-group-head>div>span{
    display:block;
    color:#7c7a86;
    font-size:13px;
}
.lara-quiz-attempts{
    display:grid;
}
.lara-quiz-attempt{
    border-bottom:1px solid #eceaf1;
}
.lara-quiz-attempt:last-child{
    border-bottom:0;
}
.lara-quiz-attempt>summary{
    list-style:none;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto 36px;
    align-items:center;
    gap:18px;
    min-height:68px;
    padding:13px 18px;
    cursor:pointer;
    user-select:none;
}
.lara-quiz-attempt>summary::-webkit-details-marker{
    display:none;
}
.lara-quiz-attempt>summary:hover{
    background:#fbfbfd;
}
.lara-quiz-attempt>summary:focus-visible{
    outline:2px solid var(--lara-primary);
    outline-offset:-2px;
}
.lara-quiz-attempt-main{
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
}
.lara-quiz-attempt-main>strong{
    color:#4a4956;
    font-size:14px;
}
.lara-quiz-attempt-main>span{
    color:#83818c;
    font-size:12px;
}
.lara-quiz-attempt-score{
    display:flex;
    align-items:center;
    gap:9px;
    white-space:nowrap;
}
.lara-quiz-attempt-score>strong{
    color:#4b4a57;
    font-size:15px;
}
.lara-quiz-attempt-score>span{
    min-width:48px;
    padding:5px 8px;
    border-radius:999px;
    background:color-mix(in srgb,var(--lara-primary) 10%,#fff);
    color:var(--lara-primary);
    font-size:12px;
    font-weight:700;
    text-align:center;
}
.lara-quiz-attempt-chevron{
    width:36px;
    height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 36px;
    border:1px solid color-mix(in srgb,var(--lara-primary) 24%,#d8d5e2);
    border-radius:10px;
    background:color-mix(in srgb,var(--lara-primary) 8%,#fff);
    color:var(--lara-primary);
    box-shadow:0 1px 2px rgba(22,19,35,.04);
    transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.lara-quiz-attempt-chevron svg{
    width:20px;
    height:20px;
    display:block;
    transition:transform .18s ease;
}
.lara-quiz-attempt>summary:hover .lara-quiz-attempt-chevron{
    background:color-mix(in srgb,var(--lara-primary) 14%,#fff);
    border-color:color-mix(in srgb,var(--lara-primary) 42%,#d8d5e2);
    box-shadow:0 2px 6px rgba(22,19,35,.08);
}
.lara-quiz-attempt[open] .lara-quiz-attempt-chevron svg{
    transform:rotate(180deg);
}
.lara-quiz-attempt-body{
    padding:0 18px 18px;
    background:#fcfcfe;
}
.lara-quiz-attempt-overview{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px;
    padding:13px 0 16px;
}
.lara-quiz-attempt-overview>span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:7px 10px;
    border:1px solid #e2e0e8;
    border-radius:999px;
    background:#fff;
    color:#73717e;
    font-size:12px;
}
.lara-quiz-question-results{
    display:grid;
    gap:10px;
}
.lara-quiz-question-result{
    overflow:hidden;
    border:1px solid #e0dee7;
    border-radius:8px;
    background:#fff;
}
.lara-quiz-question-result.is-correct{
    border-color:#a8ddbe;
}
.lara-quiz-question-result.is-wrong{
    border-color:#efb7bb;
}
.lara-quiz-question-result.is-open{
    border-color:#e8d39d;
}
.lara-quiz-question-result-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 12px;
    border-bottom:1px solid #eceaf1;
    background:#fafafd;
}
.lara-quiz-question-result-head>strong{
    font-size:13px;
    color:#4b4a56;
}
.lara-quiz-question-result-head>span{
    font-size:12px;
    font-weight:700;
}
.lara-quiz-question-result.is-correct .lara-quiz-question-result-head>span{
    color:#24804b;
}
.lara-quiz-question-result.is-wrong .lara-quiz-question-result-head>span{
    color:#b73d46;
}
.lara-quiz-question-result.is-open .lara-quiz-question-result-head>span{
    color:#9b741d;
}
.lara-quiz-question-result-grid{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(0,1.25fr) minmax(100px,.5fr);
    gap:0;
}
.lara-quiz-question-result-grid>div{
    min-width:0;
    padding:12px;
    border-right:1px solid #efedf3;
}
.lara-quiz-question-result-grid>div:last-child{
    border-right:0;
}
.lara-quiz-question-result-grid span{
    display:block;
    margin:0 0 5px;
    color:#8a8893;
    font-size:11px;
    font-weight:600;
}
.lara-quiz-question-result-grid strong{
    display:block;
    color:#4e4d59;
    font-size:13px;
    line-height:1.5;
    overflow-wrap:anywhere;
}
@media(max-width:767px){
    .lara-quiz-results-heading,
    .lara-quiz-group-head{
        align-items:flex-start;
    }
    .lara-quiz-attempt>summary{
        grid-template-columns:minmax(0,1fr) auto 36px;
        gap:10px;
        padding:12px 14px;
    }
    .lara-quiz-attempt-body{
        padding:0 14px 14px;
    }
    .lara-quiz-question-result-grid{
        grid-template-columns:1fr;
    }
    .lara-quiz-question-result-grid>div{
        border-right:0;
        border-bottom:1px solid #efedf3;
    }
    .lara-quiz-question-result-grid>div:last-child{
        border-bottom:0;
    }
}
@media(max-width:575px){
    .lara-quiz-results-heading{
        flex-direction:column;
    }
    .lara-quiz-group-head{
        flex-direction:column;
        gap:9px;
    }
    .lara-quiz-attempt>summary{
        grid-template-columns:minmax(0,1fr) 36px;
    }
    .lara-quiz-attempt-score{
        grid-column:1 / -1;
        grid-row:2;
        justify-content:flex-start;
    }
    .lara-quiz-attempt-chevron{
        grid-column:2;
        grid-row:1;
    }
    .lara-quiz-attempt-overview{
        justify-content:flex-start;
    }
}

/* v1.2.22: administrator student results and classroom management. */
.lara-admin-section-head,
.lara-admin-selected-student-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin:0 0 22px;
}
.lara-admin-section-head h5,
.lara-admin-selected-student-head h5{
    margin:0 0 7px!important;
}
.lara-admin-section-head p{
    margin:0;
    color:#777582;
    font-size:14px;
    line-height:1.55;
}
.lara-admin-count,
.lara-classroom-count,
.lara-student-classroom{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #dedde6;
    border-radius:999px;
    background:#f8f8fb;
    color:#666472;
    padding:7px 11px;
    font-size:13px;
    line-height:1;
    white-space:nowrap;
}
.lara-admin-filter{
    display:flex;
    align-items:flex-end;
    gap:10px;
    flex-wrap:wrap;
    margin:0 0 20px;
    padding:14px;
    border:1px solid #e5e3eb;
    border-radius:8px;
    background:#fafafd;
}
.lara-admin-filter label,
.lara-create-classroom-form label,
.lara-classroom-row label{
    display:flex;
    flex-direction:column;
    gap:7px;
    color:#5e5c69;
    font-size:12px;
    font-weight:600;
}
.lara-admin-filter select,
.lara-classroom-student-row select{
    min-height:42px;
    min-width:220px;
    border:1px solid #d4d2dc;
    border-radius:7px;
    background:#fff;
    padding:8px 12px;
    color:#4b4b5a;
    font:inherit;
}
.lara-student-result-list,
.lara-classroom-students,
.lara-classroom-list{
    display:grid;
    gap:10px;
}
.lara-student-result-row,
.lara-classroom-student-row,
.lara-classroom-row{
    display:grid;
    grid-template-columns:minmax(260px,1.35fr) minmax(150px,.65fr) minmax(190px,.75fr) auto;
    align-items:center;
    gap:14px;
    padding:12px 14px;
    border:1px solid #e3e1e9;
    border-radius:9px;
    background:#fff;
}
.lara-student-result-row.is-selected{
    border-color:color-mix(in srgb,var(--lara-primary) 45%,#d9d7e1);
    background:color-mix(in srgb,var(--lara-primary) 4%,#fff);
}
.lara-student-identity{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}
.lara-student-identity>div{
    min-width:0;
}
.lara-student-identity strong{
    display:block;
    color:#474653;
    font-size:14px;
    overflow-wrap:anywhere;
}
.lara-student-identity span{
    display:block;
    margin-top:3px;
    color:#85838e;
    font-size:12px;
    overflow-wrap:anywhere;
}
.lara-student-avatar{
    width:42px;
    height:42px;
    flex:0 0 42px;
    border-radius:50%;
    object-fit:cover;
    background:#eee;
}
.lara-student-avatar-large{
    width:54px;
    height:54px;
    flex-basis:54px;
}
.lara-student-stats{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.lara-student-stats span{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:6px 9px;
    border-radius:999px;
    background:#f6f5f9;
    color:#74727f;
    font-size:12px;
}
.lara-admin-selected-student-card{
    margin-top:0;
}
.lara-create-classroom-form{
    display:flex;
    align-items:flex-end;
    gap:12px;
    flex-wrap:wrap;
    margin:0 0 22px;
    padding:16px;
    border:1px solid #e4e2ea;
    border-radius:9px;
    background:#fafafd;
}
.lara-create-classroom-form label{
    flex:1 1 320px;
}
.lara-create-classroom-form input,
.lara-classroom-row input{
    width:100%;
    min-height:42px;
    border:1px solid #d4d2dc;
    border-radius:7px;
    background:#fff;
    padding:9px 12px;
    color:#4b4b5a;
    font:inherit;
}
.lara-classroom-list{
    margin-top:4px;
}
.lara-classroom-row{
    grid-template-columns:minmax(260px,1fr) auto auto;
}
.lara-student-classroom-card{
    margin-top:0;
}
.lara-classroom-student-row{
    grid-template-columns:minmax(280px,1fr) minmax(220px,.7fr) auto;
}
.lara-classroom-student-row select{
    width:100%;
    min-width:0;
}
@media(max-width:900px){
    .lara-student-result-row{
        grid-template-columns:minmax(0,1fr) auto;
    }
    .lara-student-result-row .lara-student-classroom,
    .lara-student-result-row .lara-student-stats{
        grid-column:1;
    }
    .lara-student-result-row>a{
        grid-column:2;
        grid-row:1 / span 3;
    }
    .lara-classroom-student-row{
        grid-template-columns:minmax(0,1fr) minmax(190px,.75fr) auto;
    }
}
@media(max-width:650px){
    .lara-admin-section-head,
    .lara-admin-selected-student-head{
        flex-direction:column;
    }
    .lara-admin-filter{
        align-items:stretch;
    }
    .lara-admin-filter label,
    .lara-admin-filter select,
    .lara-admin-filter .lara-button{
        width:100%;
        min-width:0;
    }
    .lara-student-result-row,
    .lara-classroom-student-row,
    .lara-classroom-row{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    .lara-student-result-row .lara-student-classroom,
    .lara-student-result-row .lara-student-stats,
    .lara-student-result-row>a{
        grid-column:auto;
        grid-row:auto;
    }
    .lara-student-result-row>a,
    .lara-classroom-student-row .lara-button,
    .lara-classroom-row .lara-button{
        width:100%;
    }
    .lara-student-classroom{
        justify-self:start;
    }
}
.lara-student-avatar.lara-avatar-initials>span{font-size:16px!important}
.lara-student-avatar-large.lara-avatar-initials>span{font-size:20px!important}


/* v1.2.23: polished classroom dropdowns and student avatars. */
.lara-admin-filter select,
.lara-classroom-student-row select{
    -webkit-appearance:none;
    appearance:none;
    width:100%;
    min-height:46px;
    border:1px solid #dedce7;
    border-radius:10px;
    background-color:#fff;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23686576' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 13px center;
    background-size:18px 18px;
    padding:10px 44px 10px 14px;
    color:#4b4b5a;
    font:inherit;
    line-height:1.35;
    box-shadow:0 1px 2px rgba(35,35,45,.03);
    cursor:pointer;
    outline:0;
    transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.lara-admin-filter select:hover,
.lara-classroom-student-row select:hover{
    border-color:color-mix(in srgb,var(--lara-primary) 38%,#dedce7);
    background-color:#fff;
}
.lara-admin-filter select:focus,
.lara-admin-filter select:focus-visible,
.lara-classroom-student-row select:focus,
.lara-classroom-student-row select:focus-visible{
    border-color:var(--lara-primary);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--lara-primary) 13%,transparent);
}
.lara-admin-filter select::-ms-expand,
.lara-classroom-student-row select::-ms-expand{display:none}
.lara-admin-filter option,
.lara-classroom-student-row option{
    color:#4b4b5a;
    background:#fff;
}

.lara-student-avatar,
.lara-student-avatar-large{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border:3px solid #fff;
    background:linear-gradient(135deg,color-mix(in srgb,var(--lara-primary) 88%,#fff),var(--lara-primary));
    box-shadow:0 0 0 1px #e4e2ea,0 5px 14px rgba(35,35,45,.12);
}
img.lara-student-avatar,
img.lara-student-avatar-large{
    object-fit:cover;
    object-position:center;
}
.lara-student-avatar.lara-avatar-initials,
.lara-student-avatar-large.lara-avatar-initials{
    color:#fff;
}
.lara-student-avatar.lara-avatar-initials>span,
.lara-student-avatar-large.lara-avatar-initials>span{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-weight:700;
    letter-spacing:.02em;
    text-shadow:0 1px 1px rgba(0,0,0,.08);
}
.lara-student-avatar.lara-avatar-initials>span{font-size:15px!important}
.lara-student-avatar-large.lara-avatar-initials>span{font-size:19px!important}
.lara-student-result-row:hover .lara-student-avatar,
.lara-classroom-student-row:hover .lara-student-avatar{
    box-shadow:0 0 0 1px color-mix(in srgb,var(--lara-primary) 30%,#e4e2ea),0 6px 16px rgba(35,35,45,.14);
}
@media(max-width:650px){
    .lara-admin-filter select,
    .lara-classroom-student-row select{
        min-height:48px;
        font-size:16px;
    }
}

/* v1.2.24: larger filter action, custom dropdowns, and inline student-result accordion. */
.lara-admin-student-results-card,
.lara-classrooms-card{
    overflow:visible;
}
.lara-admin-filter-apply{
    min-height:46px;
    padding:0 24px;
    font-size:14px;
    font-weight:700;
    border-radius:9px;
    align-self:flex-end;
}

/* Custom, fully styled dropdowns while preserving the native select for form submission. */
.lara-custom-select{
    position:relative;
    width:100%;
    min-width:220px;
    z-index:1;
}
.lara-custom-select.is-open{
    z-index:80;
}
.lara-native-select{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    opacity:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
}
.lara-select-trigger{
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border:1px solid #dedce7;
    border-radius:10px;
    background:#fff;
    color:#4b4b5a;
    padding:10px 12px 10px 14px;
    font:inherit;
    line-height:1.35;
    text-align:left;
    cursor:pointer;
    outline:0;
    box-shadow:0 1px 2px rgba(35,35,45,.03);
    transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.lara-select-trigger:hover{
    border-color:color-mix(in srgb,var(--lara-primary) 38%,#dedce7);
    background:#fff;
}
.lara-select-trigger:focus-visible,
.lara-custom-select.is-open .lara-select-trigger{
    border-color:var(--lara-primary);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--lara-primary) 13%,transparent);
}
.lara-select-value{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.lara-select-chevron{
    width:20px;
    height:20px;
    flex:0 0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#6b6977;
    transition:transform .18s ease;
}
.lara-select-chevron svg{
    width:18px;
    height:18px;
    display:block;
}
.lara-custom-select.is-open .lara-select-chevron{
    transform:rotate(180deg);
}
.lara-select-menu{
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 7px);
    z-index:90;
    max-height:280px;
    overflow:auto;
    padding:6px;
    border:1px solid #dedce7;
    border-radius:11px;
    background:#fff;
    box-shadow:0 12px 28px rgba(35,35,45,.16);
}
.lara-select-menu[hidden]{display:none!important}
.lara-select-option{
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    min-height:40px;
    display:flex;
    align-items:center;
    border:0;
    border-radius:7px;
    background:transparent;
    color:#4b4b5a;
    padding:9px 11px;
    font:inherit;
    line-height:1.35;
    text-align:left;
    cursor:pointer;
    outline:0;
}
.lara-select-option:hover,
.lara-select-option:focus-visible{
    background:#f5f4fb;
}
.lara-select-option.is-selected{
    background:color-mix(in srgb,var(--lara-primary) 11%,#fff);
    color:var(--lara-primary);
    font-weight:700;
}
.lara-select-option.is-selected::after{
    content:'✓';
    margin-left:auto;
    padding-left:12px;
    font-weight:800;
}
.lara-select-option:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.lara-admin-filter label .lara-custom-select{
    min-width:360px;
}
.lara-classroom-student-row .lara-custom-select{
    min-width:0;
}

/* Student result accordion. One student opens in place instead of adding a results card at page bottom. */
.lara-student-result-list{
    gap:10px;
}
.lara-student-result-item{
    border:1px solid #e3e1e9;
    border-radius:10px;
    background:#fff;
    overflow:hidden;
    transition:border-color .16s ease,box-shadow .16s ease;
}
.lara-student-result-item:hover{
    border-color:#d7d4df;
}
.lara-student-result-item.is-open{
    border-color:color-mix(in srgb,var(--lara-primary) 42%,#dedce7);
    box-shadow:0 0 0 2px color-mix(in srgb,var(--lara-primary) 7%,transparent);
}
.lara-student-result-item .lara-student-result-row{
    border:0;
    border-radius:0;
    background:#fff;
}
.lara-student-results-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:104px;
}
.lara-student-toggle-chevron{
    width:18px;
    height:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:transform .18s ease;
}
.lara-student-toggle-chevron svg{
    width:17px;
    height:17px;
    display:block;
}
.lara-student-result-item.is-open .lara-student-toggle-chevron{
    transform:rotate(180deg);
}
.lara-student-result-accordion{
    border-top:1px solid #eceaf1;
    background:#fafafd;
    padding:16px;
}
.lara-student-result-accordion[hidden]{display:none!important}
.lara-admin-selected-student-card{
    margin:0;
    padding:0;
    background:transparent;
}
.lara-admin-selected-student-card .lara-admin-selected-student-head{
    margin:0 0 14px;
    padding:2px 2px 14px;
    border-bottom:1px solid #eceaf1;
}
.lara-student-results-loading{
    min-height:88px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#73717e;
    font-size:13px;
}
.lara-loading-spinner{
    width:20px;
    height:20px;
    border:2px solid #e3e1e9;
    border-top-color:var(--lara-primary);
    border-radius:50%;
    animation:lara-spin .7s linear infinite;
}
@keyframes lara-spin{to{transform:rotate(360deg)}}

@media(max-width:900px){
    .lara-student-result-row .lara-student-results-toggle{
        grid-column:2;
        grid-row:1 / span 3;
    }
}
@media(max-width:650px){
    .lara-admin-filter label .lara-custom-select,
    .lara-custom-select{
        min-width:0;
        width:100%;
    }
    .lara-admin-filter-apply{
        width:100%;
        min-height:48px;
        font-size:15px;
    }
    .lara-select-trigger{
        min-height:48px;
        font-size:16px;
    }
    .lara-student-result-row .lara-student-results-toggle{
        grid-column:auto;
        grid-row:auto;
        width:100%;
    }
    .lara-student-result-accordion{
        padding:12px;
    }
}
@media(prefers-reduced-motion:reduce){
    .lara-select-chevron,
    .lara-student-toggle-chevron,
    .lara-loading-spinner{
        transition:none;
        animation:none;
    }
}


/* v1.2.25: vertically centered student avatars and roomier classroom badges. */
.lara-student-result-row .lara-student-identity,
.lara-classroom-student-row .lara-student-identity{
    align-self:center;
    align-items:center;
}
.lara-student-result-row .lara-student-avatar,
.lara-classroom-student-row .lara-student-avatar{
    align-self:center;
    margin:0!important;
    top:auto!important;
    bottom:auto!important;
    transform:translateY(-1px);
}
.lara-student-classroom{
    min-height:30px;
    padding:7px 13px!important;
    line-height:1.25;
    align-items:center;
}
@media(max-width:650px){
    .lara-student-result-row .lara-student-avatar,
    .lara-classroom-student-row .lara-student-avatar{
        transform:none;
    }
    .lara-student-classroom{
        padding:8px 13px!important;
    }
}


/* v1.2.26: stronger student-row alignment and clearly padded classroom badges. */
.lara-admin-student-results-card .lara-student-result-row{
    min-height:74px;
    align-items:center!important;
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-identity{
    display:flex!important;
    align-items:center!important;
    align-self:stretch!important;
    min-height:48px;
    margin:0!important;
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-avatar{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:center!important;
    margin:-4px 0 0 0!important;
    transform:none!important;
    vertical-align:middle!important;
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-avatar.lara-avatar-initials>span{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1!important;
    padding:0!important;
    margin:0!important;
    transform:translateY(-1px);
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    padding:10px 17px!important;
    margin:0 4px!important;
    border-radius:12px!important;
    line-height:1.25!important;
    white-space:nowrap;
}
@media(max-width:900px){
    .lara-admin-student-results-card .lara-student-result-row .lara-student-avatar{
        margin:-2px 0 0 0!important;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
        padding:9px 15px!important;
        margin:0!important;
        min-height:36px!important;
    }
}

/* v1.2.28: remove the outer outline around existing classroom rows. */
.lara-classrooms-card .lara-classroom-list .lara-classroom-row{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding-left:0!important;
    padding-right:0!important;
}


/* v1.2.29: allow enhanced classroom dropdowns to extend beyond the assignment card. */
.lara-student-classroom-card,
.lara-student-classroom-card .lara-classroom-students,
.lara-student-classroom-card .lara-classroom-student-row{
    overflow:visible!important;
}
.lara-student-classroom-card .lara-custom-select.is-open{
    z-index:200!important;
}

/* v1.2.30: tighten spacing between existing classroom rows. */
.lara-classrooms-card .lara-classroom-list{
    gap:2px!important;
}
.lara-classrooms-card .lara-classroom-list .lara-classroom-row{
    padding-top:4px!important;
    padding-bottom:4px!important;
}

/* v1.2.31: responsive student-results rows — prevent classroom/stat overlap. */
.lara-admin-student-results-card{
    container-type:inline-size;
}
.lara-admin-student-results-card .lara-student-result-row{
    grid-template-columns:minmax(240px,1.2fr) minmax(220px,1fr) auto auto;
    min-width:0;
}
.lara-admin-student-results-card .lara-student-result-row > *{
    min-width:0;
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.lara-admin-student-results-card .lara-student-result-row .lara-student-stats{
    flex-wrap:nowrap;
    white-space:nowrap;
}

@container (max-width:1050px){
    .lara-admin-student-results-card .lara-student-result-row{
        grid-template-columns:minmax(0,1fr) auto;
        grid-template-areas:
            "identity toggle"
            "classroom stats";
        column-gap:14px;
        row-gap:10px;
        padding:12px 14px;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-identity{
        grid-area:identity;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
        grid-area:classroom;
        justify-self:start;
        width:auto;
        max-width:100%;
        margin:0!important;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-stats{
        grid-area:stats;
        justify-self:end;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-results-toggle{
        grid-area:toggle!important;
        grid-column:auto!important;
        grid-row:auto!important;
        align-self:center;
        justify-self:end;
    }
}

/* Fallback for browsers/layouts where the account sidebar leaves a narrow content column. */
@media(max-width:1280px){
    .lara-admin-student-results-card .lara-student-result-row{
        grid-template-columns:minmax(0,1fr) auto;
        grid-template-areas:
            "identity toggle"
            "classroom stats";
        column-gap:14px;
        row-gap:10px;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-identity{grid-area:identity;}
    .lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
        grid-area:classroom;
        justify-self:start;
        width:auto;
        max-width:100%;
        margin:0!important;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-stats{
        grid-area:stats;
        justify-self:end;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-results-toggle{
        grid-area:toggle!important;
        grid-column:auto!important;
        grid-row:auto!important;
        justify-self:end;
    }
}

@media(max-width:720px){
    .lara-admin-student-results-card .lara-student-result-row{
        grid-template-columns:1fr;
        grid-template-areas:
            "identity"
            "classroom"
            "stats"
            "toggle";
        row-gap:10px;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-classroom,
    .lara-admin-student-results-card .lara-student-result-row .lara-student-stats,
    .lara-admin-student-results-card .lara-student-result-row .lara-student-results-toggle{
        justify-self:stretch;
        width:100%;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-classroom{
        justify-content:flex-start!important;
        white-space:normal;
        overflow:visible;
        text-overflow:clip;
    }
    .lara-admin-student-results-card .lara-student-result-row .lara-student-stats{
        flex-wrap:wrap;
    }
}

/* v1.2.33: class results PDF export action. */
.lara-admin-export-pdf{
    min-height:46px;
    padding:0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    align-self:flex-end;
    white-space:nowrap;
    text-decoration:none!important;
}
.lara-export-pdf-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:30px;
    height:24px;
    padding:0 5px;
    border:1px solid rgba(255,255,255,.68);
    border-radius:5px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.04em;
    line-height:1;
}
@media(max-width:650px){
    .lara-admin-export-pdf{width:100%;}
}


/* v1.2.35: classroom + access-role assignment per student. */
.lara-student-classroom-card .lara-classroom-student-row{
    grid-template-columns:minmax(240px,1fr) minmax(220px,.9fr) minmax(190px,.75fr) auto;
}
.lara-student-classroom-card .lara-classroom-student-row .lara-custom-select,
.lara-student-classroom-card .lara-classroom-student-row select{
    width:100%;
    min-width:0;
}
.lara-access-role-empty{
    min-height:42px;
    display:flex;
    align-items:center;
    padding:8px 12px;
    border:1px dashed #d8d5e2;
    border-radius:7px;
    color:#85838e;
    background:#fafafd;
    font-size:12px;
}
@media(max-width:1100px){
    .lara-student-classroom-card .lara-classroom-student-row{
        grid-template-columns:minmax(0,1fr) minmax(190px,.8fr) minmax(180px,.75fr) auto;
        gap:10px;
    }
}
@media(max-width:850px){
    .lara-student-classroom-card .lara-classroom-student-row{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
    }
    .lara-student-classroom-card .lara-classroom-student-row .lara-student-identity{
        grid-column:1 / -1;
    }
}
@media(max-width:650px){
    .lara-student-classroom-card .lara-classroom-student-row{
        grid-template-columns:1fr;
    }
    .lara-student-classroom-card .lara-classroom-student-row .lara-student-identity{
        grid-column:auto;
    }
    .lara-student-classroom-card .lara-classroom-student-row .lara-button{
        width:100%;
    }
}

/* 1.2.36: asynchronous student classroom/access-role saving */
.lara-classroom-student-row .lara-button[disabled]{opacity:.72;cursor:wait}
.lara-classroom-student-row.is-saved .lara-button{background:#2f9e64!important;box-shadow:0 4px 10px rgba(47,158,100,.22)}
.lara-classroom-student-row.is-save-error .lara-button{background:#d94b58!important;box-shadow:0 4px 10px rgba(217,75,88,.2)}


/* v1.2.40: keep the student's classroom dropdown above the account-card boundary. */
.lara-profile-details-card{
    overflow:visible!important;
    position:relative;
    z-index:10;
}
.lara-profile-details-card .lara-grid,
.lara-profile-details-card form,
.lara-profile-details-card .lara-full{
    overflow:visible!important;
}
.lara-profile-details-card .lara-custom-select.is-open{
    z-index:300!important;
}
