/* _content/spiikoo/Components/Layout/MainLayout.razor.rz.scp.css */
/*.page {
    position: relative;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
}

.sidebar {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row ::deep a, .top-row ::deep .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row ::deep a:hover, .top-row ::deep .btn-link:hover {
        text-decoration: underline;
    }

    .top-row ::deep a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row {
        justify-content: space-between;
    }

    .top-row ::deep a, .top-row ::deep .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page {
        flex-direction: row;
    }

    .sidebar {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth ::deep a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row, article {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}*/

#blazor-error-ui[b-4s23ysf5wh] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-4s23ysf5wh] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/spiikoo/Components/Layout/NavMenu.razor.rz.scp.css */

.hg[b-f6qhk2oita]
{
    background-color:#fff;
    height:4rem;
    position:relative;
    z-index:200;
    box-shadow:  0rem 0rem .5rem .5rem hsla(0, 0%, 0%, 0.05);
    margin-bottom:2rem;
}


.hgrid-container[b-f6qhk2oita] 
{
    width:100%;
    height:100%;
    display: grid;
    grid-template-areas: 
        "burger logo comms"
        "nav nav nav";
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto auto; /* Define rows to avoid collapsing */
    z-index:200;
}

.hgrid-logo[b-f6qhk2oita] 
{
    grid-area: logo;
    display: flex; /* Enables flexbox for centering */
    align-items: center; /* Centers vertically */
    justify-content: center; /* Centers horizontally */
    font-weight: 900;
    height: 100%; /* Set the desired height in rem */
    padding: 0rem; /* Adds margin inside the container */
    box-sizing: border-box; /* Ensures padding is included in the height */
}

.hgrid-logo a[b-f6qhk2oita] 
{
    display: inline-block;
    text-decoration: none;
}

.logo-wrapper[b-f6qhk2oita] 
{
    display: inline-block;
    max-height: 2.5rem;   /* Cap the maximum height */
    line-height: 0;     /* Remove extra spacing */
    width:100%;
    height:100%;
}

.logo-wrapper img[b-f6qhk2oita] 
{
    display: block;             /* Remove inline spacing */
    max-height: 3rem;           /* Fill the wrapper's height */
    width: auto !important;     /* Override the SVG’s inline width */
    height: auto !important;    /* Override the SVG’s inline height */
    max-width: none !important; /* Prevent any unwanted scaling limits */
    object-fit: contain;        /* Preserve aspect ratio */
}

.hgrid-nav[b-f6qhk2oita] 
{
    position: absolute;
    top: 100%;
    left: 0; 
    transform-origin: top;
    width: 100%;
    background-color: #fff;
    overflow: hidden;
    z-index: 100;
/*    opacity: 0;*/
    transform: scaleY(0);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.hgrid-nav.open[b-f6qhk2oita] 
{
    transform: scaleY(1);
/*    opacity: 1;*/
}

.nav-inner[b-f6qhk2oita] 
{
    opacity: 1;
    transition: opacity 0.2s ease;
}

/* When the main nav container is open, delay the inner fade‑in */
.hgrid-nav.open .nav-inner[b-f6qhk2oita] 
{
    transition-delay: 0.3s; /* Wait until the container has fully expanded */
    opacity: 1;
}

/* When closing, remove any delay so the content fades out immediately */
.hgrid-nav:not(.open) .nav-inner[b-f6qhk2oita] 
{
    transition-delay: 0s;
    opacity: 0;
}

.nav-overlay[b-f6qhk2oita] 
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.2); /* Semi-transparent black */
    opacity: 0;                         /* Start fully transparent */
    transition: opacity 0.3s ease;        /* Smooth transition */
    pointer-events: none;                /* Don't block clicks when hidden */
    z-index: 90;                      /* Ensure it's above other elements */
    /* Apply the blur to whatever is behind this element */
    backdrop-filter: blur(2px) opacity(200%) ;
    /* For older Safari versions: */
    -webkit-backdrop-filter: blur(2px);
}

/* When active, fade in immediately */
.nav-overlay.active[b-f6qhk2oita] 
{
    opacity: 1;
    pointer-events: auto;
    transition-delay: 0s;
}

/* When not active, add a delay before fading out */
.nav-overlay:not(.active)[b-f6qhk2oita] 
{
    transition-delay: 0.3s;
}

.hgrid-comms[b-f6qhk2oita] 
{
    grid-area: comms;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%; /* Ensure the container fills its grid area */
    max-height:100%;
    padding-top:.5rem;
}

.tn-menus-icons[b-f6qhk2oita] 
{
    display:flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%; /* Ensure the container fills its grid area */
    flex-basis:auto;
    color:#aaa;
}

.hgrid-burger[b-f6qhk2oita] {
    grid-area: burger;
    display: flex; /* Enables flexbox for centering */
    align-items: center; /* Centers vertically */
    justify-content: flex-start; /* Centers horizontally */
    color:#aaa;
    cursor:pointer;
    padding-top:.5rem;
}

.hgrid-burger div[b-f6qhk2oita] 
{
    width:1.5rem;
    height:1.5rem;
}

nav[b-f6qhk2oita] 
{
    height:auto;
    width:100%;
    display: block;
    align-items:center;
    justify-content:center;
    padding:0;
    z-index:99;
}

nav .menu-textitem[b-f6qhk2oita] 
{
    flex:none;
    display:block;
    padding:1.2rem .5rem;
    border:0px solid black;
    margin:.5rem 0;
    height:100%;
    font-size:1rem;
    font-weight:400;
    letter-spacing:0.04rem;
    cursor:pointer;
}

.menu-textitem span[b-f6qhk2oita] 
{
    padding-bottom:0.2rem;
    margin-right:0.2rem;
}

nav .menu-textitem.active span.menuitemTitle[b-f6qhk2oita] 
{
    border-bottom: 1px solid var(--color-active);
}

nav .menu-iconitem[b-f6qhk2oita] 
{
    position:relative;
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
    height:100%;
    padding:0 0.6rem;
    /*margin:1rem 0.1rem 0 0.1rem;*/
    margin-left:.2rem;
    font-weight:400;
    color:#aaa;
    cursor:pointer;
    z-index:99;
    padding:0;
}

.notification-counter[b-f6qhk2oita]
{
    position:absolute;
    display:flex;
    align-items:center;
    justify-items:center;
    justify-content:center;
    text-align:center;
    width:1.1rem;
    height:1.1rem;
    right:0;
    top:0;
    font-size:0.7rem;
    font-weight:500;
    background-color:#f30;
    padding:0rem;
    border-radius:50%;
    color:#fff;
    top:-.8rem;
    right:-.4rem;
}

.menu-iconitem:hover[b-f6qhk2oita] 
{
    color: var(--color-over)!important;
}

.menu-iconitem.active[b-f6qhk2oita] 
{
    color: var(--color-active)!important;
}

.menu-textitem[b-f6qhk2oita]::after 
{
    display: inline-block;
    content: "";
    vertical-align: -0.1rem;
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-chevron-down' viewBox='0 0 16 16'>  <path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/></svg>");
    background-repeat: no-repeat;
    background-size: 0.7rem 0.7rem;
    width:0.7rem;
    height:0.7rem;
    transform: rotate(0deg);
    transition: transform 0.2s ease;
}

.menu-textitem.active[b-f6qhk2oita]::after 
{
    color: var(--color-active)!important;
    transform: rotate(-180deg);
}

.tn-menus[b-f6qhk2oita]
{
    mix-blend-mode:unset;
}

nav .submenu[b-f6qhk2oita] 
{
    position:relative;
    display:flex;
    border:0px solid #F12BB2;
   
    width:100%;
    padding:0rem;
    height:0px;
    z-index:99;
    background-color:#fff;
    overflow-y:hidden;
    border:0px solid blue;
    transition: height 0.07s ease;
    z-index:99;
}

nav .submenu.active[b-f6qhk2oita] 
{
    height:auto;
    height: calc-size(auto);
    overflow-y:visible;
    transition: height 0.2s ease;
    z-index:99;
}

.submenu .menu-sub-inner[b-f6qhk2oita] 
{
    display:flex;
    flex-wrap: wrap; /* allow items to wrap onto new lines */
    align-items:flex-start;
    max-width:1080px;
    margin:auto;
    padding:2rem;
    background-color:#f00;
    z-index:99;
}

.submenu .menu-sub-inner a[b-f6qhk2oita],
.submenu .menu-sub-inner a:visited[b-f6qhk2oita],
.submenu .menu-sub-inner a:link[b-f6qhk2oita],
.submenu .menu-sub-inner a:active[b-f6qhk2oita] 
{
    color: #000; /* force your color */
    text-decoration: none;  /* remove default underline if you like */
}

.submenu .menu-sub-inner a:hover[b-f6qhk2oita] 
{
    color: #55A2FB!important; /* or whatever you want on hover */
    text-decoration: underline;
    text-decoration-color: var(--color-over);
    text-underline-offset: 0.6em;
}

/* Container: animates vertical scale */
nav .menu-icon-sub[b-f6qhk2oita] 
{
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    background-color: #fff;
    z-index: 99;
    transform-origin: top;
    transform: scaleY(0);
    transition: transform .5s ease;
}

/* When active, container scales to full height */
nav .menu-icon-sub.active[b-f6qhk2oita] 
{
    transform: scaleY(1);
}

/* Inner content: animate opacity */
.menu-icon-sub .menu-sub-inner[b-f6qhk2oita] 
{
    opacity: 0;
    transition: opacity 0.2s ease;
    min-height:15rem;
}

/* When opening, delay the content fade‑in until the container is fully open */
nav .menu-icon-sub.active .menu-sub-inner[b-f6qhk2oita]
{
    transition-delay: .2s;
    opacity: 1;
}

/* When closing, remove delay so content fades out immediately */
nav .menu-icon-sub:not(.active) .menu-sub-inner[b-f6qhk2oita] 
{
    transition-delay: 0s;
    opacity: 0;
}

.submenu-group[b-f6qhk2oita]
{
    flex:none;
    margin:0rem 0rem;
}

.submenu-group h4[b-f6qhk2oita] 
{
    display:block;
    border-bottom:1px solid #ccc;
}

.submenu-group-inner a[b-f6qhk2oita] 
{
    color:#666!important;
}

.submenu-group-inner a:hover[b-f6qhk2oita] 
{
    color:#f00!important;
}


@media screen and (min-width: 1024px) 
{
    .hgrid-container[b-f6qhk2oita] 
    {
        position:static;
        grid-template-areas: "logo nav comms"!important;
        grid-template-columns: 1fr 5fr 1fr!important;
        grid-template-rows: 3rem;
        height: 3rem !important;
        margin: 0 auto;
        padding-top:0rem;
    }
    
    .hgrid-burger[b-f6qhk2oita] 
    {
        display: none;
    }
    
    .hgrid-nav[b-f6qhk2oita] 
    {
        grid-area: nav;          /* Constrain this element to the grid area "nav" */
        position: static;
        top:unset;
        min-width: 0;             /* Fill the grid cell */
        background-color: #fff;
        overflow: visible;
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
        padding:0;
        z-index:unset!important;
        height:3rem!important;
    }
    
    .hgrid-comms[b-f6qhk2oita] 
    {
        
        padding-top:1rem;
        border:0px solid red;
        
    }
    .hgrid-comms .tn-menus-icons[b-f6qhk2oita] 
    {
        display:flex!important;
        justify-content: flex-end!important;
    }
    
    .nav-inner[b-f6qhk2oita] 
    {
        position: static!important;
        display: block;
        opacity: 1 !important;
        right:auto;
        margin:0;
        padding:0;
        z-index:unset!important;
        height:3rem!important;
    }
    
    nav[b-f6qhk2oita],
    .tn-menus-text[b-f6qhk2oita] 
    {
        position: static!important;
        height: 100%;
        display: inline-flex; /* or flex */
        flex-direction: row;
        align-items: flex-end;
        justify-content: center;
        width: 100%;
        padding: 0 !important;
        right:auto;
        margin:0 auto !important;
        z-index:unset!important;
    }
    
    nav .menu-textitem[b-f6qhk2oita] 
    {
        /*display: inline-block;*/
        position:static;
        height: auto;
        padding: 0rem;
        margin: 0rem 1rem;
        font-size: 1rem;
        font-weight: 400;
        letter-spacing: 0.04rem;
        cursor: pointer;
        padding:.2rem .5rem;
        z-index:unset!important;
    }
    
    .menu-textitem span[b-f6qhk2oita] 
    {
        position:static;
        padding-bottom: 0.2rem;
        margin-right: 0.2rem;
    }
    
    .tn-menus-text .menu-text-sub[b-f6qhk2oita]
    {
        position:absolute!important;
        top:100%;
        left:0!important;
        z-index:200;
        width:100vw!important;
        background-color: #fff;
        z-index: 2000;
        height:0!important;
        overflow:visible;
        margin:0;
        
    }
    .tn-menus-text .menu-text-sub.active[b-f6qhk2oita]
    {
        padding-top:1rem!important;
    }
    
    /* Inner content: animate opacity */
    .tn-menus-text .menu-text-sub .menu-sub-inner[b-f6qhk2oita] 
    {
        min-height:15rem;
        opacity: 0;
        transition: opacity .2s ease;
    }
    
    .tn-menus-txt .menu-text-sub.active[b-f6qhk2oita] 
    {
        background-color:#f00;
        position:absolute;
    }

} /*END MEDIA QUERY FOR L */


.tn-menus-text .menu-text-sub > .menu-sub-outer[b-f6qhk2oita] 
{
    position:static;
    transform-origin: top;
    transform: scaleY(0);
    transition: transform .5s ease;
    min-height:0;
    min-height:0;
    width:100vw;
    margin:0;
    background-color:#fff;
}

/* When active, container scales to full height */
.tn-menus-text .menu-text-sub.active .menu-sub-outer[b-f6qhk2oita] 
{
    transform: scaleY(1);
}

/* Inner content: animate opacity */
.tn-menus-text .menu-text-sub .menu-sub-inner[b-f6qhk2oita] 
{
    opacity: 0;
    transition: opacity .2s ease;
}

/* When opening, delay the content fade‑in until the container is fully open */
.tn-menus-text .menu-text-sub.active .menu-sub-inner[b-f6qhk2oita] 
{
    transition-delay: .2s;
    opacity: 1;
}

/* When closing, remove delay so content fades out immediately */
.tn-menus-text .menu-text-sub:not(.active) .menu-sub-inner[b-f6qhk2oita] {
  transition-delay: 0s;
  opacity: 0;
}



/* Only apply “accordion” style on screens below 1024px */
@media (max-width: 1023px) 
{
    .tn-menus-text .menu-text-sub[b-f6qhk2oita] 
    {
        position: static !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        opacity: 1 !important;
        overflow: visible !important; /* So children are visible when open */
    }
    /* 2) Animate via max-height. Keep it in the flow, but collapsed by default */
    .tn-menus-text .menu-text-sub > .menu-sub-outer[b-f6qhk2oita] 
    {
        position: static !important; /* no absolute positioning on small screens */
        min-height: 0 !important;    /* kill any forced large min-height */
        max-height: 0;               /* collapsed by default */
        overflow: hidden;            /* hide contents during collapse */
        transition: max-height 0.3s ease;
    }
    
    /* 3) When the submenu is “active”, let it expand.
        Use a value big enough to fit your typical sub-menu.
        Or dynamically set it via JS if needed. */
    .tn-menus-text .menu-text-sub.active > .menu-sub-outer[b-f6qhk2oita] 
    {
        max-height: 1000px; /* example: pick a # that is safely tall enough */
    }
    
    /* 4) Tidy up the inner area if you like */
    .tn-menus-text .menu-text-sub .menu-sub-inner[b-f6qhk2oita] 
    {
        opacity: 1 !important;
        transition: none;
        padding: 1rem !important; /* or your desired small-screen padding */
    }
    
    .menu-textitem[b-f6qhk2oita] 
    {
        margin:0!important;
        border-top:2px solid #eee!important;
        border-bottom:1px solid #ccc!important;
        padding-left:2rem!important;
    }
} /* END MEDIA SMALL */




  @media (pointer: coarse) {
  /* Replace transform animation */
  .hgrid-nav[b-f6qhk2oita] {
    transform: none !important;
    max-height: 0;
    transition: max-height 0.3s ease;
  }

  .hgrid-nav.open[b-f6qhk2oita] {
    max-height: 1000px; /* Arbitrary large value */
  }

  /* Preserve child element transforms */
  .menu-text-sub .menu-sub-outer[b-f6qhk2oita] {
    transform: scaleY(0);
    transition: transform 0.2s ease;
  }
  
  .menu-text-sub.active .menu-sub-outer[b-f6qhk2oita] {
    transform: scaleY(1);
  }
}
/* _content/spiikoo/Components/Layout/OLD_MainLayout.razor.rz.scp.css */
.page[b-ex73bgt55r] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-ex73bgt55r] {
    flex: 1;
}

.sidebar[b-ex73bgt55r] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-ex73bgt55r] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-ex73bgt55r]  a, .top-row[b-ex73bgt55r]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-ex73bgt55r]  a:hover, .top-row[b-ex73bgt55r]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-ex73bgt55r]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-ex73bgt55r] {
        justify-content: space-between;
    }

    .top-row[b-ex73bgt55r]  a, .top-row[b-ex73bgt55r]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-ex73bgt55r] {
        flex-direction: row;
    }

    .sidebar[b-ex73bgt55r] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-ex73bgt55r] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-ex73bgt55r]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-ex73bgt55r], article[b-ex73bgt55r] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-ex73bgt55r] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-ex73bgt55r] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/spiikoo/Components/Pages/AcademyManagement/ExamAssignmentToClassGroup.razor.rz.scp.css */
body[b-z4x7j1mx6g] {
}
/* _content/spiikoo/Components/Pages/AcademyManagement/Exams/ExamPaperViewReport.razor.rz.scp.css */
/* _content/spiikoo/Components/Pages/AcademyManagement/Exams/ExamWritingPartUpload.razor.rz.scp.css */



/*:global(.api-call-log) {
    margin: 1rem 0;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

:global(.prompt-box, .response-box) {
    padding: 1rem;
}

:global(.prompt-box) {
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

:global(.response-box) {
    background-color: white;
}

:global(.response-box.error) {
    background-color: #fff5f5;
    color: #dc3545;
}

:global(pre) {
    white-space: pre-wrap;
    word-wrap: break-word;
    margin: 0;
}


:global(.debug-html) {
    display: none !important;
    font-size: 0.8rem;
    color: red;
}*/

/* Show debug info on hover */
/*:global(.paragraph-container:hover .debug-html) {
    display: inline !important;
    background: white;
    z-index: 1000;
}*/

/* Writing Report Header --------------------------------------------------------------------- */



/*:global(.drop-zone) { border: 2px dashed #ccc; padding: 2rem; text-align: center; border-radius: 5px; transition: border-color 0.3s; }
:global(.drop-zone.hover) { border-color: #007bff; background-color: #f8f9fa; }
:global(.image-list) { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; margin: 1rem 0; }
:global(.image-item) { position: relative; padding: 0.5rem; border: 1px solid #dee2e6; border-radius: 0.25rem; }
:global(.order-badge) { position: absolute; top: 5px; left: 5px; background: rgba(0,0,0,0.7); color: white; padding: 2px 5px; border-radius: 3px; }
:global(.debug-box) { position: relative; bottom: 0; right: 0; width: 400px; height: 300px; overflow: auto; background: white; padding: 1rem; border: 1px solid #ccc; box-shadow: -2px -2px 5px rgba(0,0,0,0.1); }
    
:global(.crop-actions) { margin-top: 10rem; display: block; gap: 0.5rem; justify-content: flex-end; }
:global(.camera-controls) { display: block; gap: 0.5rem; margin-top: 1rem;  }


:global(.cropper-container) { 
    display: block;
    width:90%;*/
/*    height:100cqh;*/
    /*overflow:hidden;*/
    /*container-type: size;*/
    /*margin:1rem auto;

}
:global(.cropper-container) { display: block;max-width:100cqw;  object-fit: contain; }

:global(.cropperComponent) { 
    
    max-width:10%;


}



:global(.big-img) { object-fit: contain;
 }
:global(.drop-zone) { border: 2px dashed #ccc; padding: 2rem; text-align: center; border-radius: 5px; transition: border-color 0.3s; }
:global(.drop-zone.hover) { border-color: #007bff; background-color: #f8f9fa; }
:global(.image-list) { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; margin: 1rem 0; }
:global(.image-item) { position: relative; padding: 0.5rem; border: 1px solid #dee2e6; border-radius: 0.25rem; }
:global(.order-badge) { position: absolute; top: 5px; left: 5px; background: rgba(0,0,0,0.7); color: white; padding: 2px 5px; border-radius: 3px; }
:global(.debug-box) { position: relative; bottom: 0; right: 0; width: 400px; height: 300px; overflow: auto; background: white; padding: 1rem; border: 1px solid #ccc; box-shadow: -2px -2px 5px rgba(0,0,0,0.1); }


:global(.crop-actions) { margin-top: 10rem; display: block; gap: 0.5rem; justify-content: flex-end; }
:global(.camera-controls) { display: block; gap: 0.5rem; margin-top: 1rem;}

:global(.placeholder-cont) {
    width:20rem;
    text-justify:inter-word;
}*/
/* This pseudo-element ensures the span takes up the width of 20 characters */

/* The inline span with an animated gradient background */
/*:global(.placeholder) {
    margin-right:1rem;
   color: transparent;
    opacity:.5;
  display: inline;*/ /* Flow inline like text */
  /*font-family: monospace;
  background: linear-gradient(
    315deg,
    #ddd,*/             /* Darker base */
    /*#ccc 40%,*/         /* Start of band */
    /*#eee 50%,*/         /* Lighter band */
    /*#ddd 60%,*/         /* End of band */
    /*#ccc*/              /* Darker base continues */
  /*);*/
  /* Make the background large enough so the band can travel */
  /*background-size: 300% 300%;*/
  /* Animate the background position */
  /*animation: band-flow 4s ease-in-out infinite reverse;
  border-radius:.5rem;
}*/

/* Keyframes to move the gradient from top left to bottom right,
   with a pause in the middle */


/*:global(.placeholderv2) {
    margin-right:1rem;
   color: transparent;
    opacity:.5;
  display: inline;*/ /* Flow inline like text */
  /*font-family: monospace;
  background: linear-gradient(
    315deg,
    #ddd,*/             /* Darker base */
    /*#ccc 40%,*/         /* Start of band */
    /*#eee 50%,*/         /* Lighter band */
    /*#ddd 60%,*/         /* End of band */
    /*#ccc*/              /* Darker base continues */
  /*);*/
  /* Make the background large enough so the band can travel */
  /*background-size: 300% 300%;*/
  /* Animate the background position */
  /*animation: band-flow2 7s ease-in-out infinite ;
  border-radius:.5rem;
}*/

/* Keyframes to move the gradient from top left to bottom right,
   with a pause in the middle */
/*@keyframes band-flow {
  0% {
    background-position: -100% -100%;
  }
  
  100% {
    background-position: 150% 150%;
  }
}

@keyframes band-flow2 {
  0% {
    background-position: -150% -150%;
  }
  
  100% {
    background-position: 100% 100%;
  }
}*/


/* Default: Wider screens */
/*:global(.WritingReportHeader) {
    width:50%;

  display: grid;
  grid-template-columns: 3fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 1rem;
  color:#555;
  font-weight: 600;
 
}*/

/* Place items by their order */
/*:global(.WritingReportHeader > div:nth-child(1)) {
  grid-column: 1;
  grid-row: 1;
  background-color: #d7d7d7;
  font-size:1.4rem;
  padding:1rem;
  border:1px solid #999;
  border-radius: .5rem;
}
:global(.WritingReportHeader > div:nth-child(2)) {
  grid-column: 1;
  grid-row: 2;
  background-color: #d7d7d7;
  font-size:1.4rem;
  font-weight:400;
  padding:1rem;
  border:1px solid #999;
  border-radius: .5rem;
}
:global(.WritingReportHeader > div:nth-child(3)) {
  grid-column: 2;
  grid-row: 1;
  background-color:antiquewhite;
  text-align:center;
  min-width:6rem;
  border:1px solid #999;
  border-radius: .5rem;
  font-size:3rem;
}
:global(.WritingReportHeader > div:nth-child(4)) {
  grid-column: 2;
  grid-row: 2;
  
  text-align:center;
  background-color:antiquewhite;
  min-width:6rem;
  text-align:center;
  border:1px solid #999;
  border-radius: .5rem;
  font-size:3rem;
}


:global(.error-debug){display:none;}
:global(.grammar-error) {
    background-color: #e6e6fa;*/
    /* The entire block is tinted. */
    /*padding: .3rem .5rem 0 .1rem;
    position:relative;

    margin: .2rem;
    border-radius:.3rem;
}

:global(.spelling-error) {
    background-color: #ffe6e6;
    padding: .3rem .5rem 0 .1rem;
    position:relative;

    margin: .2rem;
    border-radius:.3rem;
}

:global(.wETTA.tooltip-host) {
    font-weight: bold;
    cursor: pointer;*/ /* So user knows it’s interactive */
    /*position: relative;
    display:inline-block;
    vertical-align: super;
    font-size: 0.8rem;
    margin:.3rem;
    font-weight:normal;
    color:#766;
    white-space: normal !important;
}

:global(.wETTCont) {
  display: none;
  position: absolute;
  bottom: 100%;*/       /* position above the bracket */
  /*left: 50%;*/          /* default centered */
  /*transform: translateX(-50%);*/
  /* Removed margin to avoid interfering with positioning */
  /* margin: 2rem .4rem!important; */
  /*border: 1px solid #ccc;
  padding: 0.6rem;
  z-index: 999;
  font-weight: normal;
  min-width: 250px;
  max-width: 450px;
  width: auto;
  overflow-wrap: break-word;  
  word-wrap: break-word;     
  white-space: normal;
  border-radius: .3rem;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  font-size: 0.9rem;
  white-space: normal !important;
}*/

/* Background colours inherited from parent classes */
/*:global(.grammar-error .wETTCont) {
  
  background-color: hsla(240, 45%, 98%, 1);
}

:global(.spelling-error .wETTCont) {
  background-color: hsl(0, 100%, 98%, 1);
}*/

/* Show tooltip on hover */
/*:global(.wETTA.tooltip-host:hover .wETTCont) {
  display: block;
}*/

/* Alignment overrides */
/*:global(.wETTCont.align-right) {
  right: 0;
  left: auto;
  transform: none;
}

:global(.wETTCont.align-left) {
  left: 0;
  transform: none;
}

:global(.wETTCont.align-center) {
  left: 50%;
  transform: translateX(-50%);
}*/
/* Lines inside the tooltip */
/*:global(.wETTLine) {
    margin-bottom: 4px;
    display:block;
}

:global(.wETTKey) {
    display:block;
    font-weight: bold;
    margin-right: 4px;
}
:global(.word-count-display) {
  position: absolute; 
  top: 1rem; 
  right: 0; 
  padding: 0.3rem;
  font-size: 1rem;
  font-weight:bold;
  color: #666;
}


 


:global(.modal-backdrop) {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

:global(.modal-content) {
    background-color: #fff;
    padding: 1rem;
    border-radius: 5px;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}




:global(.summary-error) {font-size:1.1rem;margin-bottom:1.5rem;padding:1.5rem;
                border-radius:.3rem;
                  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

:global(.error-id) {font-weight:bold;}
:global(.error-original strong, .error-correction strong, .error-explanation strong) {display:block;}

:global(.error-summary.grammar .error-id) {color:hsla(258, 90%, 61%, .5);}
:global(.error-summary.spelling .error-id) {color:hsla(6, 68%, 53%, 1);}

:global(.error-summary.grammar .summary-error) {background-color:hsla(240, 67%, 94%, 1);}
:global(.error-summary.spelling .summary-error){background-color:hsl(0, 100%, 95%, 1);}

:global(.error-summaries){
    font-size:1.2rem;
    
    border: 1px solid #ccc;
    border-radius:.5rem;
    padding:1.5rem 4rem;
    margin:1rem;

    width: 100%;
    max-width: 100%;*/ /* Prevent overflow */
    /*display:flex;
    flex-wrap: wrap;*/ /* Allows stacking when container is too narrow */
    /*gap: 2rem;*/ /* Adjust space between columns */
/*}

:global(.error-summaries div) {*/
    /*flex: 1 1 calc(50% - 2rem); /* Takes up ~50% width minus gap */
    /*min-width:18rem;
}
:global(.error-summary h3) {display:block;font-size:1.6rem;padding:0 1.5rem;margin:1rem;}

:global(.error-summary.grammar) {flex:2;}




:global(.writingTitle){
    margin:0rem auto 4rem auto;
    display:block;
    width:100%;
    text-align:center;
    font-size:3.5rem;
    color:#ddd;
    font-weight:200;
    line-height:4rem;

}

:global(.annotated-text) {
    font-size:1.2rem;
    line-height:2rem;
    border: 2px solid #ccc;
    border-radius:.5rem;
    padding:4rem;
    margin:1rem;





    width: 100%;
                     min-height: 40rem;

                 resize: horizontal;*/ /* Allow horizontal resize */
                 /*overflow-x: auto;  Add scrollbar if needed */
                 /*min-width: 50rem;*/ /* Set minimum reasonable width */
                 /*max-width: 100%;*/ /* Prevent overflow */
                 /*box-sizing: border-box;
                 white-space: pre-wrap;


}
:global(.annotated-text p )  {
    margin-bottom:2rem;
}


:global(.simulated-row) { display: flex; flex-wrap: wrap; padding: 0.5em 0; border-bottom: 1px solid #ccc; }
:global(.simulated-row div:first-child) {
  text-align: left;
  padding-left:2rem;
  font-weight:bold;
  color:#777;
}

:global(.simulated-row .cell) { padding: 0 0.5em;*/ /* Default: each cell gets equal space */ /*flex: 1; text-align: center; border:1px solid #ccc}*/

    /* If you want the name cell to take more space, you can adjust its flex value: */
/*:global(.cell-name) { flex: 2; text-align: left; }

:global(.CESScore) { font-size:1.2rem;}
:global(.OOTScore) { font-size:1rem;}
:global(.ScorePass) { color:#44cc44;}
:global(.ScoreFail) {color:#cc4444;}*/


/* _content/spiikoo/Components/Pages/AcademyManagement/Exams/ViewStudentExam.razor.rz.scp.css */
/* _content/spiikoo/Components/UI/Exam/ReportGraph.razor.rz.scp.css */
*[b-ht8y0omht2],
[b-ht8y0omht2]::before,
[b-ht8y0omht2]::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

.rg-container[b-ht8y0omht2], .rg-rtitle[b-ht8y0omht2] {

    margin:.5rem auto;
    position:relative;
    box-sizing: border-box;
}
.rg-container[b-ht8y0omht2] {
    aspect-ratio: 16 / 9;
}



.rg-oot[b-ht8y0omht2] {
    display:inline;
    color:#ff0;
    /*position:absolute;
    right: 5%;*/
    font-weight:normal;
    font-size: clamp(.55rem, -0.275rem + 2.5vw, .9rem);
    margin-left:2%;
    /*top:50%;*/
    /*transform: translateY(-50%);*/
}


.rg-header-container[b-ht8y0omht2] {
    position:absolute;
    height:15%;
    top:0;
    left:0;
    right:0;
    box-sizing: border-box;
}

.rg-graph-container[b-ht8y0omht2] {
    position:absolute;
    height:80%;
    top:20%;
    left:0;
    right:0;
    box-sizing: border-box;

}


.rg-h[b-ht8y0omht2], .rg-bgcol[b-ht8y0omht2], .rg-col[b-ht8y0omht2] {
    position:absolute;
    width:11%;
    top:0;
    bottom:0;
    box-sizing: border-box;
    height:100%!important;
}
.rg-h[b-ht8y0omht2] {
    text-align:center;
    font-size: clamp(.5rem, -0.875rem + 2.833vw, 1rem);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    color:#000000;
    font-weight:bold;
    line-height:normal;

}
.rg-bgcol[b-ht8y0omht2] {
    position:absolute;
    z-index:1;
    height:100%!important;
 
}
.rg-col-scale[b-ht8y0omht2] {
    background-color:#dddddd;
    width:11%;
    
}

.rg-bgcol-scale[b-ht8y0omht2]:before, .rg-bgcol-reading[b-ht8y0omht2]:before,.rg-bgcol-uoe[b-ht8y0omht2]:before,.rg-bgcol-writing[b-ht8y0omht2]:before,.rg-bgcol-listening[b-ht8y0omht2]:before,.rg-bgcol-speaking[b-ht8y0omht2]:before {
    
  content: "";
  position: absolute;
  width: 100%;
  height: 5%;
  transform:translateY(-100%);

  background-color:#dddddd;




  }
  .rg-col-scale[b-ht8y0omht2]:after, 
  .rg-bgcol-reading[b-ht8y0omht2]:after,
  .rg-bgcol-uoe[b-ht8y0omht2]:after,
  .rg-bgcol-writing[b-ht8y0omht2]:after,
  .rg-bgcol-listening[b-ht8y0omht2]:after,
  .rg-bgcol-speaking[b-ht8y0omht2]:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 5%;
    bottom:0;
    background-color:#dddddd;
    

    }
  


.rg-col[b-ht8y0omht2] {
    z-index:3;
}


.rg-h-cefr[b-ht8y0omht2], .rg.bgcol-cefr[b-ht8y0omht2], .rg-col-cefr[b-ht8y0omht2] {
left:0;
}

.rg-h-speaking[b-ht8y0omht2], .rg-bgcol-speaking[b-ht8y0omht2], .rg-col-speaking[b-ht8y0omht2] {
    right:1%;
}

.rg-h-listening[b-ht8y0omht2], .rg-bgcol-listening[b-ht8y0omht2], .rg-col-listening[b-ht8y0omht2] {
    right:13.5%;
}

.rg-h-writing[b-ht8y0omht2], .rg-bgcol-writing[b-ht8y0omht2], .rg-col-writing[b-ht8y0omht2] {
    right:26%;
}

.rg-h-uoe[b-ht8y0omht2], .rg-bgcol-uoe[b-ht8y0omht2], .rg-col-uoe[b-ht8y0omht2] {
    right:38.5%;
}

.rg-h-reading[b-ht8y0omht2], .rg-bgcol-reading[b-ht8y0omht2], .rg-col-reading[b-ht8y0omht2] {
    right:51%;
}

.rg-h-results[b-ht8y0omht2], .rg-bgcol-results[b-ht8y0omht2], .rg-col-results[b-ht8y0omht2] {
    right:63.5%;
}

.rg-h-scale[b-ht8y0omht2], .rg-bgcol-scale[b-ht8y0omht2], .rg-col-scale[b-ht8y0omht2] {
    right:76%;
}

.rg-bgcol-reading[b-ht8y0omht2], .rg-bgcol-uoe[b-ht8y0omht2], .rg-bgcol-writing[b-ht8y0omht2], .rg-bgcol-listening[b-ht8y0omht2], .rg-bgcol-speaking[b-ht8y0omht2] {
    background-color:#dddddd;
}


.rg-score[b-ht8y0omht2] {
    position:absolute;
    bottom:0;
    background: #e0523c;
    color: #fff;
    text-align: center;
    width:100%;
    overflow:hidden;
    clip-path: polygon(
        0 50%, /*left point*/
        10% 0, /*top left indent*/
        100% 0, /*tr*/
        100% 100%, /*br*/
        10% 100%, /*bottom left indent*/
        0% 50% /*back to left point*/
  );
  box-sizing: border-box;
  transform: translateY(50%);
  font-size: clamp(.65rem, -0.675rem + 2vw, 1rem);
  font-weight:bold;

 /* padding-right:.5rem;*/
}


.rg-score-wrapper[b-ht8y0omht2] {
    position: absolute;
    bottom: var(--final-bottom);
    width: 100%;
    animation: bounceRise-b-ht8y0omht2 .7s ease-out forwards;
    animation-fill-mode: backwards;
  }

  .rg-col-reading .rg-score-wrapper[b-ht8y0omht2] {
    animation-delay: 0.1s;
  }
  
  .rg-col-uoe .rg-score-wrapper[b-ht8y0omht2] {
    animation-delay: 0.2s;
  }
  
  .rg-col-writing .rg-score-wrapper[b-ht8y0omht2] {
    animation-delay: 0.3s;
  }
  
  .rg-col-listening .rg-score-wrapper[b-ht8y0omht2] {
    animation-delay: 0.4s;
  }
  
  .rg-col-speaking .rg-score-wrapper[b-ht8y0omht2] {
    animation-delay: 0.5s;
  }
  

  @keyframes bounceRise-b-ht8y0omht2 {
    0% {
      bottom: 0;
    }
    60% {
      /* Overshoot a bit above the final position */
      bottom: calc(var(--final-bottom) + 3%);
    }
    80% {
      /* Bounce back slightly lower than final */
      bottom: calc(var(--final-bottom) - 1.5%);
    }
    100% {
      bottom: var(--final-bottom);
    }
  }


































.rg-grade-innercont[b-ht8y0omht2] {
    position:absolute;
    width:100%;
    height: calc(50 * 1.4285%)!important;
    box-sizing: border-box;
}

.rg-grade-a[b-ht8y0omht2], .rg-grade-b[b-ht8y0omht2], .rg-grade-c[b-ht8y0omht2] {
    background-color:#7f7f7f;
    border-bottom:2px dotted #fff;
    box-sizing: border-box;
    font-size: clamp(.4rem, -0.275rem + 1.6vw, 1.3rem);
    color:#fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width:100%;
    position:relative;
    font-weight:bold;
}
.rg-grade-a[b-ht8y0omht2] {
    height: 20%;

}
.rg-grade-b[b-ht8y0omht2] {
    height: 14.5%;

}
.rg-grade-c[b-ht8y0omht2] {
    height: 25.5%;

}

.rg-grade-pl[b-ht8y0omht2] {
    background-color:#a5a5a5;
    box-sizing: border-box;
    height: 40%;
    color:#fff;
    font-size: clamp(.4rem, -0.275rem + 1.6vw, 1.3rem);
    display: flex;
    align-items: center;
    justify-content: center;
    position:relative;
}

/* Remove default list styling */
.rg-col-scale ol[b-ht8y0omht2],
.rg-col-scale ol li[b-ht8y0omht2] {
  list-style: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* 
  Set up the counter to start from 180 on the first line:
  We reset to 181, and each <li> increments -1.
*/
/*.rg-col-scale ol {
  counter-reset: marker 231;*/ /* so first <li> is 180 */
  /*width: 100%;*/              /* optional fixed width for the “ruler” */
  /*height:100%;
  margin: 0 auto;*/            /* center it horizontally */
  /*position: relative;
}*/

.rg-col-scale ol li[b-ht8y0omht2] {
  display: block;
  box-sizing: border-box;
  height: 1.4285%;                /* thickness of each horizontal line */
  border-top: 0.1rem solid #000; /* horizontal “tick” */

  margin-left: auto;             /* aligns flush-right */
  margin-right: 10%;
  position: relative;
  width: 5%;/*(0.01rem,  0.001%, 2rem)!important;                  default (short) tick */
  counter-increment: marker -1;  /* decrement the counter by 1 each time */
}

/* Medium tick for multiples of 5 (175, 165, etc.) => line 6,16,26,... */
.rg-col-scale ol li:nth-child(10n + 6)[b-ht8y0omht2] {
  width: 10%;
}

/* Longest tick for multiples of 10 => line 1 (180),11 (170),21 (160), etc. */
.rg-col-scale ol li:nth-child(10n + 1)[b-ht8y0omht2] {
  width: 20%;
}

/* Remove trailing line at the bottom */
.rg-col-scale ol li:last-child[b-ht8y0omht2] {
  height: 0;
}

/* 
  Show the counter on multiples of 10: line 1 => 180, line 11 => 170, etc.
  (i.e. child(10n+1)).
*/
.rg-col-scale ol li:nth-child(10n + 1)[b-ht8y0omht2]::before {
  content: counter(marker);
  position: absolute;
  top: -0.5rem;
  left: -.5rem;      /* place it to the left of the tick */
  transform:translateX(-100%);
  line-height: 1rem;
  text-align: center;
  font-size: clamp(.4rem, -0.275rem + 2vw, 1rem);
  color:#000;
 
}

.rg-cefrband[b-ht8y0omht2] {
    height: calc(20 * 1.4285%);
    position:absolute;

    box-sizing: border-box;

    font-size: clamp(.6rem, -0.875rem + 4.333vw, 2.5rem);
    color:#000000;
    font-weight:bold;
    display: flex;
    align-items: center;
    justify-content: center;
}

/*.rg-cefrband-c2 {
    height: calc(30 * 1.4285%);
}*/

.rg-cefrbands-line-cont[b-ht8y0omht2] {
    position:absolute;
    width:100%;
    height:100%;
    position:absolute;
    box-sizing: border-box;
    z-index:2;
}

/*.rg-cefrbands-line {
    height: calc(20 * 1.4285%);
    border-bottom:2px dotted #666;
    box-sizing: border-box;
}

.rg-cefrbands-line:first-child {
    height: calc(30 * 1.4285%)!important;
}*/



.rg-bgcol-cefr[b-ht8y0omht2] {
    position:absolute;
}


.rg-cefrbands-line-cont[b-ht8y0omht2] {
    position:absolute;
    width:100%;
    height:100%;
    position:absolute;
    box-sizing: border-box;
    z-index:2;

}

.rg-cefrbands-line[b-ht8y0omht2] {
    border-bottom:2px dotted #666;
    box-sizing: border-box;
    position:relative;
    width:100%;
    height:10px;
    position:absolute;

}


.rg-cefrbands-line2[b-ht8y0omht2]{
    bottom:calc(40 * 1.4285%);
}
.rg-cefrbands-line3[b-ht8y0omht2]{
    bottom:calc(20 * 1.4285%);
}

.band-below[b-ht8y0omht2]{bottom: calc(20 * 1.4285%)!important;}
.band-current[b-ht8y0omht2]{bottom: calc(40 * 1.4285%);}
.band-above[b-ht8y0omht2]  {bottom: calc(55 * 1.4285%);}
.band-nodisplay[b-ht8y0omht2] {display:none;}

.ungraded[b-ht8y0omht2] {
    background-color:#666!important;
    clip-path: none !important;
    bottom:1rem!important;
}
/* _content/spiikoo/Components/UI/Exam/ReportHeader.razor.rz.scp.css */
*[b-jfwjjg9fht],
[b-jfwjjg9fht]::before,
[b-jfwjjg9fht]::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

.rg-container[b-jfwjjg9fht], .rg-rsummary[b-jfwjjg9fht] {

    margin:.5rem auto;
    position:relative;
    box-sizing: border-box;
}
.rg-container[b-jfwjjg9fht] {
    aspect-ratio: 16 / 9;
}
.rg-rsummary[b-jfwjjg9fht] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem; /* creates space between components */
    align-items: center; /* optional vertical alignment */
    margin-bottom:1rem;
  }
  
  .rg-rsummary-comp[b-jfwjjg9fht] {
    flex: 0 1 auto; /* flex-grow: 0, flex-shrink: 1, flex-basis: auto */
  }
.rg-rsummary-h[b-jfwjjg9fht] {
    font-size:.9rem;
    margin:.15rem .5rem;


}

.rg-rtitle-comp[b-jfwjjg9fht]{
    margin:.6rem 0 0 0;
}

.rg-rsummary-n[b-jfwjjg9fht] {
    font-size:1rem;
    background: #dddddd;
    color: #000000;
    padding:.3rem .5rem;
    position:relative;
    min-width: 100%;

    font-weight:bold;
}
/* _content/spiikoo/Components/UI/Stepper.razor.rz.scp.css */
/* STEPPER ---------------------------------------------------------------------------------------------------------*/

/* Base container for the stepper */
.stepper[b-85kn9cn2j1] {
  list-style: none;
  display: flex;
  align-items: center;
  padding: 0;
  margin: 1rem 2rem 4rem 2rem;
}

/* Each step item container */
.stepper-item[b-85kn9cn2j1] {
  margin: 0 0.5rem; /* Equivalent to horizontal margin (mx-2) */
}

/* Pointer styles based on interactivity */
.stepper-item.clickable[b-85kn9cn2j1] {
  cursor: pointer;
}
.stepper-item.non-clickable[b-85kn9cn2j1] {
  cursor: default;
}

/* Circle that displays the step number */
.step-circle[b-85kn9cn2j1] {
  height: 2rem;             /* h-8 */
  width: 2rem;              /* w-8 */
  display: flex;
  align-items: center;      /* items-center */
  justify-content: center;  /* justify-center */
  border: 2px solid;        /* border-2 */
  border-radius: 0.5rem;    /* rounded-lg */
  text-align: center;       /* text-center */
  font-weight: 900;         /* font-black */
  background-color: #fff;   /* default background */
  position: relative;
}

/* Styling for completed steps */
.step-circle.completed[b-85kn9cn2j1] {
  border-color: #22c55e;    /* green border */
  color: #22c55e;           /* green text */
  background-color: #f0fdf4; /* light green background */
}

/* Styling for the current step */
.step-circle.current[b-85kn9cn2j1] {
  border-color: #3b82f6;    /* blue border */
  color: #3b82f6;           /* blue text */
  background-color: #eff6ff; /* light blue background */
}

/* Styling for upcoming steps */
.step-circle.upcoming[b-85kn9cn2j1] {
  border-color: #a8a29e;    /* stone border */
  color: #a3a3a3;           /* stone text */
  background-color: #f5f5f4; /* light stone background */
}

/* Container for the step number and label */
.step-number-container[b-85kn9cn2j1] {
  position: relative;
}

/* The step label positioned below the circle */
.step-label[b-85kn9cn2j1] {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, 1.25rem); /* centers horizontally and moves down */
  font-size: 0.75rem;   /* text-xs */
  font-weight: bold;
  color: #a3a3a3;      /* stone color for the label */
  white-space: nowrap;
}

/* Connector between steps */
.step-connector[b-85kn9cn2j1] {
  flex: 1;
  display: flex;
  align-items: center;
  margin: 0 0.5rem;
  border-radius: 0.25rem;
  max-height:1rem;
}

/* Connector styles for completed and upcoming steps */
.connector-completed[b-85kn9cn2j1] {
  background-color: #bbf7d0; /* light green */
}

.connector-upcoming[b-85kn9cn2j1] {
  background-color: #e5e7eb; /* light gray/stone */
}

/* The actual line inside the connector */
.connector-line[b-85kn9cn2j1] {
  height: 1px;              /* h-px */
  margin: 2rem 0;           /* my-8 */
  background-color: #e5e7eb; /* gray background */
  border: none;
}




/* END STEPPER ---------------------------------------------------------------------------------------------------------*/
