
  main.svelte-1cl1lwk {
    text-align: center;
    padding: 1em;
    max-width: 240px;
    margin: 0 auto;
  }

  h1.svelte-1cl1lwk {
    color: #2a9d8f;
    font-size: 2em;
  }

  a.svelte-1cl1lwk {
    display: block;
    margin-top: 1em;
    color: #e76f51;
    text-decoration: none;
    font-size: 1.2em;
  }

  a.svelte-1cl1lwk:hover {
    text-decoration: underline;
  }


  .background.svelte-e5no09 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #fffffa;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .content.svelte-e5no09 {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 400px; /* Adjust as needed */
    margin: 40px auto
  }

  div.svelte-e5no09 {
    padding: 30px;
  }

  form.svelte-e5no09 {
    width: 90%;
    padding: 20px;
    background-color: #eeebdb;
    border-radius: 10px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  label.svelte-e5no09 {
    display: block;
    margin-top: 10px;
    font-weight: bold;
    align-self: baseline;
    color:#14695b;
  }

  input.svelte-e5no09, button.svelte-e5no09 {
    width: -webkit-fill-available;
    display: block;
    padding: 10px;
    margin-top: 10px;
    border-radius: 5px;
    border: 1px solid #ddd;
  }

  button.svelte-e5no09 {
    background-color: #fab45a;
    color: #674a25;
    font-weight: bold;
    border: 1px solid;
    border-color: #674a25;
    height:50px;
  }

  button.svelte-e5no09:hover {
    background-color: #674a25;
    color:#fab45a;
    border-color:#fab45a;
  }


  .error-message.svelte-e5no09 {
    color: red;
    font-weight: bold;
    margin-top: 10px;
    text-align: center;
  }

  .forgot-password.svelte-e5no09 {
    margin-top: 15px;
    text-align: center;
    color: #14695b;
    font-size: 14px;
    cursor: pointer;
    text-decoration: underline;
  }

  .forgot-password.svelte-e5no09:hover,
  .forgot-password.svelte-e5no09:focus {
    color: #fab45a;
    outline: none;
    text-decoration: none;
    font-weight: bold;
  }

  /* (unused) .divider {
    display: flex;
    align-items: center;
    margin: 15px 0 10px 0;
    color: #14695b;
    font-size: 14px;
  }*/

  /* (unused) .divider::before,
  .divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #14695b;
  }*/

  /* (unused) .divider::before {
    margin-right: 10px;
  }*/

  /* (unused) .divider::after {
    margin-left: 10px;
  }*/

  /* (unused) .google-signin-container {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 10px 0 5px 0;
  }*/

  /* (unused) #google-signin-button {
    width: 100%;
    max-width: 100%;
  }*/

  /* Override Google's default button styling to reduce margins */
  .google-signin-container iframe {
    margin: 0 !important;
    padding: 0 !important;
  }

  .google-signin-container div[data-type="standard"] {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* (unused) .loading-text {
    text-align: center;
    color: #14695b;
    font-style: italic;
    margin-top: 10px;
  }*/

  @media (max-aspect-ratio: 4/3) {
    .content.svelte-e5no09 {
      width: calc(100%-40px);
    }
  }

  @media (min-aspect-ratio: 4/3) {
    .content.svelte-e5no09 {
      width: 80%;
      margin: 40px auto 0;
    }
  }


  /* Frame 1214136024 */
  .logo-frame.svelte-6xb0ed {
    width: 225px;
    height: 80px;
    position: absolute;
    left: 0px;
    top: 0px;
    background: url('/images/TUTORYLOGO.png');
  }


    a.svelte-99oxya {
      box-sizing: border-box;
      display: flex;
      flex-direction: row;
      align-items: center;
      padding: 15px 20px;
      width: 100%;
      min-height: 60px;
      position: relative; /* For absolute positioning of text */

      /* Keep the same color scheme */
      background: #fab45a;

      /* Remove black border for modern look */
      border: none;

      /* Modern subtle shadow */
      box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);

      border-radius: 8px;
      cursor: pointer;
      text-decoration: none;

      /* Smooth transitions */
      transition: all 0.3s ease;

      /* Modern button styling */
      outline: none;
      flex: none;
      order: 0;
      align-self: stretch;
      flex-grow: 0;
    }

    a.svelte-99oxya:hover {
      background-color: #927043;
      transform: translateY(-2px);
      box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
    }

    a.svelte-99oxya:focus {
      outline: 2px solid #fab45a;
      outline-offset: 2px;
    }

    .icon.svelte-99oxya {
      width: 24px; /* Icon size */
      height: 24px;
      font-size: 1.5rem; /* Smaller, more modern icon size */
      display: flex;
      align-items: center;
      justify-content: center;
      color: #333; /* Darker color for better contrast */
      position: absolute; /* Position absolutely */
      left: 20px; /* Left padding distance */
      flex-shrink: 0;
    }

    span.svelte-99oxya {
      font-size: 1rem;
      font-weight: 600; /* Slightly less bold for modern look */
      color: #333;
      text-align: center;
      width: 100%; /* Take full width */
      position: absolute; /* Position absolutely for perfect centering */
      left: 0;
      right: 0;
    }


  dialog.svelte-18rkf9k{border:0;border-radius:8px;padding:0;max-width:520px;width:calc(100% - 32px);color:#333;box-shadow:0 16px 40px rgba(0,0,0,.25)}dialog.svelte-18rkf9k::backdrop{background:rgba(0,0,0,.48)}form.svelte-18rkf9k{position:relative;padding:22px;display:flex;flex-direction:column;gap:7px}.dialog-close.svelte-18rkf9k{position:absolute;top:10px;right:10px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#777;font-size:26px;font-weight:400;line-height:1;cursor:pointer}.dialog-close.svelte-18rkf9k:hover{background:#eee;color:#555}.dialog-close.svelte-18rkf9k:disabled{cursor:not-allowed;opacity:.5}h2.svelte-18rkf9k{margin:0 40px 4px 0}p.svelte-18rkf9k{margin:4px 0 10px;line-height:1.45}label.svelte-18rkf9k{font-weight:600;margin-top:6px}input.svelte-18rkf9k{min-height:44px;box-sizing:border-box;border:1px solid #bbb;border-radius:8px;background:#eeebdb;padding:10px;font-size:16px}input.svelte-18rkf9k:focus,button.svelte-18rkf9k:focus{outline:2px solid #14695b;outline-offset:2px}input[aria-invalid="true"].svelte-18rkf9k{border-color:#b91c1c}small.svelte-18rkf9k,.error-summary.svelte-18rkf9k{color:#b91c1c}.error-summary.svelte-18rkf9k{background:#fee2e2;padding:10px;border-radius:8px}.privacy.svelte-18rkf9k{font-size:14px;color:#666}.dialog-actions.svelte-18rkf9k{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.dialog-actions.svelte-18rkf9k button:where(.svelte-18rkf9k){min-height:44px;padding:9px 16px;border-radius:8px;font-weight:600}.primary.svelte-18rkf9k{background:#fab45a;border:1px solid #333}.secondary.svelte-18rkf9k{background:white;border:1px solid #14695b;color:#14695b}@media(max-width:767px){dialog.svelte-18rkf9k{max-height:calc(100vh - 24px);overflow:auto}.dialog-actions.svelte-18rkf9k{flex-direction:column-reverse}.dialog-actions.svelte-18rkf9k button:where(.svelte-18rkf9k){width:100%}.dialog-close.svelte-18rkf9k{width:36px}}


  dialog.svelte-395m6x{border:0;border-radius:10px;padding:0;width:min(960px,calc(100% - 24px));height:min(860px,calc(100dvh - 24px));max-width:none;max-height:none;color:#333;box-shadow:0 18px 48px rgba(0,0,0,.3);overflow:hidden}dialog.svelte-395m6x::backdrop{background:rgba(0,0,0,.55)}.gateway-shell.svelte-395m6x{box-sizing:border-box;height:100%;min-height:0;display:flex;flex-direction:column;background:#fff}header.svelte-395m6x{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px 10px;border-bottom:1px solid #e5e7eb}h2.svelte-395m6x{margin:0;color:#14695b;font-size:22px}header.svelte-395m6x p:where(.svelte-395m6x){margin:4px 0 0;line-height:1.4}.close.svelte-395m6x{flex:0 0 44px;width:44px;height:44px;border:0;border-radius:8px;background:transparent;color:#333;font-size:28px;cursor:pointer}.guidance.svelte-395m6x{margin:0;padding:10px 18px;background:#fef3c7;color:#854d0e;line-height:1.4}.error.svelte-395m6x{margin:12px 18px 0;padding:10px;border-radius:8px;background:#fee2e2;color:#b91c1c}iframe.svelte-395m6x{display:block;box-sizing:border-box;min-height:320px;width:100%;height:100%;flex:1 1 auto;border:0;background:#f8fafc}footer.svelte-395m6x{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:10px 18px;border-top:1px solid #e5e7eb}footer.svelte-395m6x span:where(.svelte-395m6x){margin-right:auto;color:#555}footer.svelte-395m6x button:where(.svelte-395m6x){min-height:44px;padding:8px 14px;border:1px solid #14695b;border-radius:8px;background:white;color:#14695b;font-weight:600}.refresh.svelte-395m6x{background:#fab45a;color:#111;border-color:#333}button.svelte-395m6x:focus,iframe.svelte-395m6x:focus{outline:2px solid #14695b;outline-offset:2px}button.svelte-395m6x:disabled{opacity:.6}@media(max-width:600px){dialog.svelte-395m6x{width:100%;height:100dvh;border-radius:0}.guidance.svelte-395m6x{font-size:14px}footer.svelte-395m6x{align-items:stretch}footer.svelte-395m6x span:where(.svelte-395m6x){width:100%;margin:0}footer.svelte-395m6x button:where(.svelte-395m6x){flex:1 1 140px}header.svelte-395m6x{padding:12px}.guidance.svelte-395m6x{padding:9px 12px}}


  .notice.svelte-3oweyv{position:relative;box-sizing:border-box;width:100%;min-width:0;border:1px solid #f59e0b;background:#fef3c7;color:#854d0e;border-radius:8px;padding:16px 42px 16px 16px;box-shadow:0 .5px 2px rgba(96,97,112,.16)}.notice.svelte-3oweyv p:where(.svelte-3oweyv){margin:7px 0}.close.svelte-3oweyv{position:absolute;right:6px;top:5px;width:36px;height:36px;border:0;background:transparent;color:#854d0e;font-size:24px;cursor:pointer}.actions.svelte-3oweyv{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.actions.svelte-3oweyv button:where(.svelte-3oweyv){min-height:44px;max-width:100%;border:1px solid #14695b;border-radius:8px;background:white;color:#14695b;padding:8px 12px;font-weight:600;cursor:pointer}.actions.svelte-3oweyv .primary:where(.svelte-3oweyv){background:#fab45a;border-color:#333;color:#111}.actions.svelte-3oweyv button:where(.svelte-3oweyv):focus,.close.svelte-3oweyv:focus{outline:2px solid #14695b;outline-offset:2px}.error.svelte-3oweyv{color:#b91c1c}@media(max-width:480px){.actions.svelte-3oweyv{flex-direction:column}.actions.svelte-3oweyv button:where(.svelte-3oweyv){width:100%}}


  .greeting-page.svelte-1j8zcah {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    padding: 12px 0 28px;
    box-sizing: border-box;
  }

  .dashboard-buttons.svelte-1j8zcah {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    align-items: center;
    margin: 0;
  }

  .support-buttons.svelte-1j8zcah {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin: 0;
    width: 100%;
    align-items: center;
  }

  /* If dashboard buttons are present, avoid "double gap" before contact buttons. */
  .dashboard-buttons.svelte-1j8zcah + .support-buttons:where(.svelte-1j8zcah) {
    margin-top: 0;
  }

  .viber-button.svelte-1j8zcah, .whatsapp-button.svelte-1j8zcah {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 20px;
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    transition: background-color 0.3s ease, transform 0.2s ease;
    width: 100%;
    box-sizing: border-box;
    cursor: pointer;
  }

  .viber-button.svelte-1j8zcah {
    background-color: #7360f2;
  }

  .viber-button.svelte-1j8zcah:hover {
    background-color: #5d4fd1;
    transform: translateY(-2px);
  }

  .viber-button.svelte-1j8zcah:focus {
    outline: 2px solid #7360f2;
    outline-offset: 2px;
  }

  .whatsapp-button.svelte-1j8zcah {
    background-color: #25d366;
  }

  .whatsapp-button.svelte-1j8zcah:hover {
    background-color: #22c55e;
    transform: translateY(-2px);
  }

  .whatsapp-button.svelte-1j8zcah:focus {
    outline: 2px solid #25d366;
    outline-offset: 2px;
  }

  .viber-button.svelte-1j8zcah i:where(.svelte-1j8zcah), .whatsapp-button.svelte-1j8zcah i:where(.svelte-1j8zcah) {
    font-size: 20px;
  }

  .logout-container.svelte-1j8zcah {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    width: 100%;
  }

  .logout-text.svelte-1j8zcah {
    font-size: 16px;
    color: #666;
    cursor: pointer;
    transition: color 0.3s ease;
    text-decoration: none;
    border: none;
    background: none;
    padding: 12px 20px;
    border-radius: 8px;
    transition: background-color 0.3s ease, color 0.3s ease;
    display: block;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
  }

  .logout-text.svelte-1j8zcah:hover {
    color: #14695b;
    background-color: rgba(20, 105, 91, 0.1);
  }

  .logout-text.svelte-1j8zcah:focus {
    outline: 2px solid #14695b;
    outline-offset: 2px;
  }

  .content.svelte-1j8zcah {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 0;
    gap: 28px;
    box-sizing: border-box;
  }

  .logo.svelte-1j8zcah {
    display: block;
    width: 250px;
    max-width: 100%;
    height: auto;
  }

  .button-group.svelte-1j8zcah {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }

  .loading-placeholder.svelte-1j8zcah {
    height: 200px; /* Adjust height to match approximate button height */
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 14px;
  }

  @media (max-width: 480px) {
    .greeting-page.svelte-1j8zcah {
      gap: 16px;
      padding-top: 4px;
    }

    .content.svelte-1j8zcah {
      gap: 20px;
    }
  }


    label.svelte-3yjmpn{
        margin-bottom: 10px;
        margin-top: 20px;
        font-size: 1.17em;
        font-weight: bold;

    }
    div.svelte-3yjmpn{
        width:100%;
    }
    textarea.svelte-3yjmpn {
        background-color:#eeebdb;
        width: 100%;
        height: 100px;
        border: 1px solid #14695b;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Adjust the padding for better text visibility */
        padding: 10px;

        /* Optional: Set a font for better readability */
        font-family: Arial, sans-serif;
        font-size: 16px;
        resize: vertical; /* Allows the user to resize the textarea vertically */
    }



    .dropdown.svelte-5mfdsn {
        display: flex;
        flex-direction: column;
        margin-bottom: 1rem;
        width:100%;
    }
    option.svelte-5mfdsn {
        color: black; /* Ensure options text is black as well */
    }
    label.svelte-5mfdsn {
        margin-bottom: 0.5rem;
        font-weight: bold;
        font-size:1.17rem;
    }

    select.svelte-5mfdsn {
        padding: 1rem;
        font-size: 1rem;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        background-color: #eeebdb;
    }

    select.svelte-5mfdsn:focus {
        outline: none;
        border-color: #927043;
    }



    .topPart.svelte-1gxcvh{
        display:flex;
        justify-content: space-between;
    }
    .datetime-picker.svelte-1gxcvh {
        width: 100%;
        display: flex;
        margin-bottom: 1rem;
        flex-direction: column;
    }

    input[type="datetime-local"].svelte-1gxcvh {
        background-color: #eeebdb;
        padding: 0.5rem;
        font-size: 1rem;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        margin-right: 10px;
    }

    button.svelte-1gxcvh {
        padding: 0.5rem 1rem;
        font-size: 1rem;
        cursor: pointer;
        background-color: #f0a298;
        color: white;
        border: none;
        border-radius: 4px;
    }

    button.svelte-1gxcvh:hover {
        background-color: #927043;

    }
    .removeButton.svelte-1gxcvh{
        /* Button */
        /* Auto layout */
        display: flex;
        justify-content: center;
        align-items: center;
        height:40px;
        background-color: #fab45a;
        transition: background-color 0.3s ease, color 0.3s ease;
        color:black;

    }
    .removeButton.svelte-1gxcvh:hover{
        background-color: #c98f43;

    }


    .site-header.svelte-kbgw04 {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        padding: 16px 0;
        background-color: #fff;
    }

    .header-logo.svelte-kbgw04 {
        max-width: 250px;
        height: auto;
        margin-bottom: 28px;
    }

    .top-bar.svelte-kbgw04 {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 8px;
        width: 100%;
        max-width: 600px;
        background-color: transparent;
        border-bottom: 1px solid #000;
        margin-bottom: 30px;
    }

    .exit-button.svelte-kbgw04 {
        position: absolute;
        left: 8px;
    }

    .icon.svelte-kbgw04 {
        width: 40px;
        height: 40px;
    }

    .label.svelte-kbgw04 {
        font-size: 28px;
        font-weight: 300;
        color: #14695b;
        text-align: center;
    }


    .checkbox-group.svelte-10olx4a {
        height: 45px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        background: #eeebdb;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        transition: background-color 0.3s ease, color 0.3s ease; /* Add color transition */
    }

    .checkbox-group.selected.svelte-10olx4a {
        background-color: #14695B; /* Background color when selected */
    }

    .leftSide.svelte-10olx4a {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .leftSide.svelte-10olx4a img.icon:where(.svelte-10olx4a) {
        width: 24px;
        height: 24px;
        transition: filter 0.3s ease; /* Smooth transition for icon color */
    }

    .checkbox-group.selected.svelte-10olx4a .leftSide:where(.svelte-10olx4a) img.icon:where(.svelte-10olx4a) {
        filter: brightness(0) invert(1); /* Change icon color to white */
    }

    .leftSide.svelte-10olx4a label:where(.svelte-10olx4a) {
        font-size: 1rem;
        color: #333;
        transition: color 0.3s ease; /* Smooth transition for text color */
    }

    .checkbox-group.selected.svelte-10olx4a .leftSide:where(.svelte-10olx4a) label:where(.svelte-10olx4a) {
        color: #fff; /* Change text color to white */
    }

    input[type="checkbox"].svelte-10olx4a {
        width: 24px;
        height: 24px;
        border-radius: 6px;
        border: 2px solid #333;
        background-color: white;
        appearance: none;
        outline: none;
        cursor: pointer;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        transition: background-color 0.3s ease;
    }

    input[type="checkbox"].svelte-10olx4a:checked {
        background-color: #14695B;
        border: none;
        background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="20 6 9 17 4 12"/%3E%3C/svg%3E');
        background-repeat: no-repeat;
        background-position: center;

    }


    .checkbox-area.svelte-f5ne0v {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        width: 100%;
    }


    .submitBut.svelte-1hww7qz{
        background-color: #fab45a;
        color:black;
        border: 1px solid #000000;

    }
    .submitBut.svelte-1hww7qz:hover:not(:disabled){
        background-color: #c98f43;

        color:black;
    }
    .submitBut.svelte-1hww7qz:disabled{
        background-color: #d1d5db;
        color: #6b7280;
        cursor: not-allowed;
        opacity: 0.6;
    }

    .student-form.svelte-1hww7qz {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .addDatetime.svelte-1hww7qz{
        display: flex;
        justify-content: center;
        align-items: center;
        height:40px;
        background-color: #fab45a;
        color:black;
    }
    .addDatetime.svelte-1hww7qz:hover{
        background-color: #c98f43;
        color:black;
    }

    button.svelte-1hww7qz{
        margin-top: 20px;
        height: 60px;
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;
        border-radius: 6px;
        border: 1px solid #333;
        font-weight: bold;
        font-size: large;
        background: transparent;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        transition: background-color 0.3s ease, color 0.3s ease; /* Add color transition */
    }
    button.svelte-1hww7qz:hover {
        background-color: #14695b;
        color:white;
    }

    /* Notification Styles */
    .notification.svelte-1hww7qz {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        padding: 16px;
        animation: svelte-1hww7qz-slideDown 0.3s ease-out;
    }

    .success-notification.svelte-1hww7qz {
        background-color: #d4edda;
        border-bottom: 3px solid #28a745;
        color: #155724;
    }

    .duplicate-notification.svelte-1hww7qz {
        background-color: #fff3cd;
        border-bottom: 3px solid #ffc107;
        color: #856404;
    }

    .notification-content.svelte-1hww7qz {
        display: flex;
        align-items: center;
        max-width: 1200px;
        margin: 0 auto;
        gap: 12px;
    }

    .notification-icon.svelte-1hww7qz {
        font-size: 24px;
        font-weight: bold;
        color: #28a745;
        background-color: white;
        border-radius: 50%;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .notification-text.svelte-1hww7qz {
        flex: 1;
    }

    .notification-text.svelte-1hww7qz strong:where(.svelte-1hww7qz) {
        display: block;
        font-size: 16px;
        margin-bottom: 4px;
    }

    .notification-text.svelte-1hww7qz p:where(.svelte-1hww7qz) {
        margin: 0;
        font-size: 14px;
        opacity: 0.9;
    }

    .close-notification.svelte-1hww7qz {
        background: none;
        border: none;
        font-size: 24px;
        font-weight: bold;
        cursor: pointer;
        color: #155724;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
        transition: background-color 0.2s ease;
        margin: 0;
        padding: 0;
        flex-shrink: 0;
    }

    .close-notification.svelte-1hww7qz:hover {
        background-color: rgba(21, 87, 36, 0.1);
        color: #155724;
    }

    @keyframes svelte-1hww7qz-slideDown {
        from {
            transform: translateY(-100%);
            opacity: 0;
        }
        to {
            transform: translateY(0);
            opacity: 1;
        }
    }



    .container.svelte-1dpmdro {
        display: flex;
        flex-direction: column;
        align-items: center;
        width:100%;

    }


    .top-bar.svelte-1dpmdro {
        width: 100%;
        text-align: center;
        border-bottom: 2px solid #ccc;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        }



    .content.svelte-1dpmdro {
      margin-top: 50px; /* Ensures the content is not under the top bar */
      color: #000;
      display:flex;
      justify-content: space-around;

    }

    .illustration.svelte-1dpmdro {
      margin-top: 20px;
    }
    .filler.svelte-1dpmdro{
        width:60px;
    }
    .label.svelte-1dpmdro{
        font-size:23px;
    }
    .illustration.svelte-1dpmdro img:where(.svelte-1dpmdro) {
      width: 100%;
      height: auto;
      max-height:500px;
    }
    .exit-button.svelte-1dpmdro{
        display:flex;
        justify-content: flex-end;
    }
    .exit-button.svelte-1dpmdro img:where(.svelte-1dpmdro){
        width:80%;
        max-width:60px;
    }


    .class-name.svelte-26bk8d {
      font-size: 1.5rem;
      font-weight: bold;
      margin-bottom: 0.5rem;
    }


    .teacher-name.svelte-1vthtef {
      font-size: 1rem;
      color: #000000;
      margin-bottom: 1rem;
    }


    .date-time-container.svelte-burgad {
      display: flex;
      align-items: center;
    }

    .time.svelte-burgad {
        font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
        font-size: 2.5rem;
        font-weight: bold;
    }

    .date.svelte-burgad {
      font-size: 1rem;
      color: var(--date-color);
      font-weight: 700;
      margin-left: 0.75rem;
    }


    .emailButton.svelte-1iku3o5 {
      background: none;
      border: none;
      color: rgb(0, 0, 0);
      text-decoration: underline;
      cursor: pointer;
      padding: 0;
      font-weight:700;
    }
    .sendClassInfoToEmail.svelte-1iku3o5 {
      margin-top: 10px;
    }


    /* Button styling */
    button.svelte-mm53j9 span:where(.svelte-mm53j9) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-mm53j9 {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: #faad4a;

        /* Black border */
        border: 2px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-mm53j9:hover {
        background-color: #14695b;
        color:white;
    }

    /* Text inside the button */
    span.svelte-mm53j9 {
        font-size: 1rem;
        font-weight: bold;

    }

    /* Manual link container */
    .manual-link-container.svelte-mm53j9 {
        margin-bottom: 4px;
        width: 100%;
    }

    /* Help text styling */
    .help-text.svelte-mm53j9 {
        text-align: center;
        color: #666;
        font-size: 0.75rem;
        cursor: pointer;
        margin: 0;
        text-decoration: underline;
        transition: color 0.2s ease;
    }

    .help-text.svelte-mm53j9:hover {
        color: #14695b;
    }

    /* Link display container */
    .link-display.svelte-mm53j9 {
        margin-top: 8px;
        margin-bottom: 8px;
        padding: 12px;
        background-color: #f5f5f5;
        border: 1px solid #ddd;
        border-radius: 8px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    /* Meeting link styling */
    .meeting-link.svelte-mm53j9 {
        color: #14695b;
        word-break: break-all;
        font-size: 0.9rem;
        text-decoration: none;
        padding: 8px;
        background-color: white;
        border-radius: 4px;
        border: 1px solid #ddd;
    }

    .meeting-link.svelte-mm53j9:hover {
        text-decoration: underline;
        background-color: #f9f9f9;
    }

    /* Copy button styling */
    .copy-btn.svelte-mm53j9 {
        padding: 8px 16px;
        background-color: #14695b;
        color: white;
        border: 1px solid #14695b;
        border-radius: 6px;
        cursor: pointer;
        font-size: 0.9rem;
        font-weight: bold;
        transition: background-color 0.2s ease;
        height: auto;
    }

    .copy-btn.svelte-mm53j9:hover {
        background-color: #0f5347;
    }


    .filter-buttons.svelte-kp72vu {
        display: flex;
        gap: 1rem;
        height: 60px;
        justify-content: space-between;
    }

    button.svelte-kp72vu {
        border-radius: 8px;
        background-color: white;
        color: #000000;
        font-size: 1rem;
        font-weight: bold;
        cursor: pointer;
        transition: background-color 0.3s, color 0.3s;
        width:100%;
    }

    button.active.svelte-kp72vu {
        background-color: #14695b;
        color: white;
    }

    button.svelte-kp72vu:hover {
        background-color: #14695b;
        color: white;
    }


    /* Button styling */
    button.svelte-1llijef span:where(.svelte-1llijef) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-1llijef {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: white;

        /* Black border */
        border: 2px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-1llijef:hover {
        background-color: #14695b;
        color:white;
    }

    /* Text inside the button */
    span.svelte-1llijef {
        font-size: 1rem;
        font-weight: bold;

    }


    /* Button styling */
    button.svelte-6376t7 span:where(.svelte-6376t7) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-6376t7 {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: #faad4a;

        /* Black border */
        border: 2px solid black;
        color:black;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-6376t7:hover {
        background-color: #14695b;
        color:white;
        border: 2px solid #14695b;
    }
    .koregouti.svelte-6376t7{
        background-color: white;
        color: black;
        border: 2px solid #000000;
    }
    .koregouti.svelte-6376t7:hover{
        background-color:#14695b;
        color:white;
        border: 2px solid #14695b;

    }

    /* Text inside the button */
    span.svelte-6376t7 {
        font-size: 1rem;
        font-weight: bold;

    }


    .teacher-name.svelte-18voth8 {
      font-size: 1rem;
      color: #000000;
      margin-bottom: 1rem;
    }


    .filter-buttons.svelte-6gjhef {
        display: flex;
        gap: 1rem;
        height: 60px;
        justify-content: space-between;
    }

    button.svelte-6gjhef {
        border-radius: 8px;
        background-color: white;
        color: #000000;
        font-size: 1rem;
        font-weight: bold;
        cursor: pointer;
        transition: background-color 0.3s, color 0.3s;
        width:100%;
    }

    button.active.svelte-6gjhef {
        background-color: #14695b;
        color: white;
    }

    button.svelte-6gjhef:hover {
        background-color: #14695b;
        color: white;
    }


    .red-border.svelte-1fnrdte {
        border-left: 4px solid #dc2626;
        background-color: #fef2f2;
    }

    .responsibility-incident.svelte-1fnrdte {
        background-color: #ffcccc;
    }

    .yellow-border.svelte-1fnrdte {
        border-left: 4px solid #f59e0b;
        background-color: #fffbeb;
    }

    .green-border.svelte-1fnrdte {
        border-left: 4px solid #059669;
        background-color: #f0fdf4;
    }

    .grey-border.svelte-1fnrdte {
        border-left: 4px solid #6b7280;
        background-color: #f9fafb;
    }

    .header.svelte-1fnrdte {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 0 0 8px 0;
        font-size: 1rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        margin-bottom: 12px;
        border-bottom: 1px solid #e5e7eb;
    }

    .red-header.svelte-1fnrdte {
        color: #dc2626;
    }

    .yellow-header.svelte-1fnrdte {
        color: #f59e0b;
    }

    .green-header.svelte-1fnrdte {
        color: #059669;
    }

    .grey-header.svelte-1fnrdte {
        color: #6b7280;
    }

    /* Button styling */
    button.svelte-1fnrdte {
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 10px 16px;
        width: 100%;
        height: 44px;
        background-color: #ffffff;
        border: 1px solid #d1d5db;
        border-radius: 6px;
        font-size: 0.875rem;
        font-weight: 500;
        color: #374151;
        cursor: pointer;
        transition: all 0.2s ease;
        outline: none;
    }

    button.svelte-1fnrdte:hover {
        background-color: #f3f4f6;
        border-color: #9ca3af;
    }

    button.svelte-1fnrdte:focus {
        box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.5);
    }

    .confirm-button.svelte-1fnrdte {
        background-color: #059669;
        border-color: #059669;
        color: white;
        margin-bottom: 8px;
    }

    .confirm-button.svelte-1fnrdte:hover {
        background-color: #047857;
        border-color: #047857;
    }

    .deny-button.svelte-1fnrdte {
        background-color: #dc2626;
        border-color: #dc2626;
        color: white;
    }

    .deny-button.svelte-1fnrdte:hover {
        background-color: #b91c1c;
        border-color: #b91c1c;
    }

    .classcontainer.svelte-1fnrdte {
        padding: 20px;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        margin-bottom: 16px;
        gap: 16px;
        box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
        border-radius: 8px;
        border: 1px solid #e5e7eb;
        color: #374151;
    }

    .time-section.svelte-1fnrdte {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 12px 0;
    }

    .time-item.svelte-1fnrdte {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .time-label.svelte-1fnrdte {
        font-size: 0.875rem;
        font-weight: 500;
        color: #6b7280;
    }

    .senasLaikas.svelte-1fnrdte .time-label:where(.svelte-1fnrdte) {
        color: #dc2626;
    }

    .naujasLaikas.svelte-1fnrdte .time-label:where(.svelte-1fnrdte) {
        color: #059669;
    }

    .addi_text.svelte-1fnrdte {
        font-size: 0.875rem;
        color: #6b7280;
        font-style: italic;
        padding: 12px;
        background-color: #f9fafb;
        border-radius: 6px;
        border-left: 3px solid #d1d5db;
    }

    .no-events-message.svelte-1fnrdte {
        text-align: center;
        color: #6b7280;
        font-size: 1rem;
        padding: 40px 20px;
        background-color: #ffffff;
        border-radius: 8px;
        margin: 20px 0;
        border: 1px solid #e5e7eb;
    }

    .no-events-message.svelte-1fnrdte p:where(.svelte-1fnrdte) {
        color: #6b7280;
        font-size: 1rem;
        margin: 0;
        font-weight: 500;
    }

    .button-group.svelte-1fnrdte {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 8px;
    }


  /* Header styling */
  .labelDiv.svelte-147ystv {
    display: flex;
    justify-content: space-around;
    margin-bottom: 2rem;
    margin-top: 2rem;
  }
  .labelDiv.svelte-147ystv span:where(.svelte-147ystv) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #333;
  }

  /* Loading and empty states */
  .loading-message.svelte-147ystv, .empty-message.svelte-147ystv {
    text-align: center;
    padding: 2rem;
    color: #666;
    font-style: italic;
  }

  /* Date group styling */
  .date-group.svelte-147ystv {
    margin-bottom: 2rem;
  }
  .date-header.svelte-147ystv {
    font-size: 1.1rem;
    font-weight: bold;
    color: #0055aa;
    border-bottom: 2px solid #0055aa;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
  }

  /* Request card styling */
  .request-card.svelte-147ystv {
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    margin-bottom: 1rem;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    width: 100%;
    box-sizing: border-box;
  }

  .request-card.svelte-147ystv:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
  }

  .request-card.accepted.svelte-147ystv {
    border-color: #28a745;
    background: #f8fff9;
  }

  .request-content.svelte-147ystv {
    padding: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    width: 100%;
    box-sizing: border-box;
  }

  .student-info.svelte-147ystv {
    flex: 1;
  }

  .student-name.svelte-147ystv {
    margin: 0 0 0.5rem 0;
    font-size: 1.3rem;
    font-weight: 600;
    color: #333;
  }

  .class-info.svelte-147ystv {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.8rem;
  }

  .subject.svelte-147ystv {
    background: transparent;
    color: #007bff;
    border: 2px solid #007bff;
    padding: 0.3rem 0.8rem;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
  }

  .grade.svelte-147ystv {
    background: transparent;
    color: #6c757d;
    border: 2px solid #6c757d;
    padding: 0.3rem 0.8rem;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
  }

  .topic.svelte-147ystv {
    color: #666;
    font-size: 0.95rem;
    line-height: 1.4;
    margin-top: 1.2rem;
  }

  .topic.svelte-147ystv strong:where(.svelte-147ystv) {
    color: #333;
  }

  .requested-times.svelte-147ystv {
    margin-top: 0.8rem;
  }

  .requested-times.svelte-147ystv strong:where(.svelte-147ystv) {
    color: #333;
    font-size: 0.95rem;
    display: block;
    margin-bottom: 0.5rem;
  }

  .times-list.svelte-147ystv {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .time-badge.svelte-147ystv {
    background: #f8f9fa;
    color: #495057;
    border: 1px solid #dee2e6;
    padding: 0.25rem 0.6rem;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
  }

  .no-times.svelte-147ystv {
    color: #6c757d;
    font-style: italic;
    font-size: 0.9rem;
  }

  /* Action section */
  .action-section.svelte-147ystv {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 140px;
  }

  .accept-button.svelte-147ystv {
    background: #28a745;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
  }

  .accept-button.svelte-147ystv:hover {
    background: #218838;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
  }

  .accept-button.svelte-147ystv:active {
    transform: translateY(0);
  }

  .accepted-indicator.svelte-147ystv {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 12px 24px;
    background: #d4edda;
    color: #155724;
    border: 2px solid #28a745;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1rem;
  }

  .check-icon.svelte-147ystv {
    font-size: 1.2rem;
    font-weight: bold;
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {
    .request-content.svelte-147ystv {
      flex-direction: column;
      align-items: flex-start;
      gap: 1rem;
    }

    .class-info.svelte-147ystv {
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .action-section.svelte-147ystv {
      width: 100%;
      justify-content: flex-start;
    }

    .accept-button.svelte-147ystv, .accepted-indicator.svelte-147ystv {
      width: 100%;
      justify-content: center;
    }
  }


    .students-container.svelte-16as9ou {
        font-size: 0.9rem;
        color: #333;
        margin-bottom: 0.8rem;
    }

    .students-label.svelte-16as9ou {
        font-weight: 600;
        margin-bottom: 0.3rem;
        color: #555;
    }

    .students-list.svelte-16as9ou {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .student-item.svelte-16as9ou {
        background-color: #f8f9fa;
        padding: 0.25rem 0.5rem;
        border-radius: 4px;
        border: 1px solid #e9ecef;
        font-size: 0.85rem;
        display: flex;
        align-items: center;
        gap: 0.3rem;
    }

    .student-name.svelte-16as9ou {
        color: #333;
    }

    .student-grade.svelte-16as9ou {
        background-color: #fab45a;
        color: #000;
        padding: 0.1rem 0.4rem;
        border-radius: 3px;
        font-weight: 600;
        font-size: 0.75rem;
        min-width: 1.5rem;
        text-align: center;
    }



      .classcontainer.svelte-19fwqcq{
        padding: 15px;
        background-color: #eeebdb;
        display: flex;
        flex-direction: column;
        margin-bottom:15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color:black;
        align-items: flex-start;

      }

      .no-classes-message.svelte-19fwqcq {
        padding: 30px;
        text-align: center;
        background-color: #f8f9fa;
        border-radius: 8px;
        margin: 20px 0;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
      }

      .no-classes-message.svelte-19fwqcq p:where(.svelte-19fwqcq) {
        color: #6c757d;
        font-size: 16px;
        margin: 0;
        font-weight: 500;
      }

      .reschedule-tab.svelte-19fwqcq {
        width: 100%;
        margin-top: 10px;
      }

      .reschedule-tab-button.svelte-19fwqcq {
        width: 100%;
        padding: 15px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 16px;
        font-weight: bold;
        transition: background-color 0.3s, color 0.3s;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        position: relative;
      }

      .reschedule-tab-button.active.svelte-19fwqcq {
        background-color: #fab45a;
        color: black;
        border-color: #fab45a;
      }

      .reschedule-tab-button.svelte-19fwqcq:hover {
        background-color: #fab45a;
        color: black;
      }

      .teacher-registration-tab.svelte-19fwqcq {
        width: 100%;
        margin-top: 10px;
        margin-bottom: 10px;
      }

      .teacher-registration-button.svelte-19fwqcq {
        width: 100%;
        padding: 15px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 16px;
        font-weight: bold;
        transition: background-color 0.3s, color 0.3s;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        position: relative;
      }

      .teacher-registration-button.svelte-19fwqcq:hover {
        background-color: #fab45a;
        color: black;
      }

      .count-badge.svelte-19fwqcq {
        background-color: #dc3545;
        color: white;
        border-radius: 50%;
        padding: 4px 8px;
        font-size: 12px;
        font-weight: bold;
        min-width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
      }


body {

    font-family: Arial, sans-serif;

  }

  button {
    font-family: inherit;
  }

    .timeslots-container.svelte-uixu6z {
        padding: 15px;
        background-color: #f9f9f9;
        border-radius: 8px;
        margin: 10px 0;
    }

    .timeslots-container.svelte-uixu6z h4:where(.svelte-uixu6z) {
        margin: 0 0 10px 0;
        color: #14695b;
        font-size: 1.1em;
    }

    .info-text.svelte-uixu6z {
        margin: 0 0 20px 0;
        color: #666;
        font-size: 0.9em;
        font-style: italic;
    }

    .no-slots.svelte-uixu6z {
        text-align: center;
        padding: 20px;
        background-color: #fff3cd;
        border: 1px solid #ffeaa7;
        border-radius: 4px;
        color: #856404;
    }

    .slots-grid.svelte-uixu6z {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .day-section.svelte-uixu6z {
        background-color: white;
        border-radius: 6px;
        padding: 12px;
        box-shadow: 0px 1px 3px rgba(0,0,0,0.1);
    }

    .day-title.svelte-uixu6z {
        margin: 0 0 10px 0;
        color: #333;
        font-size: 1em;
        font-weight: 600;
        border-bottom: 1px solid #eee;
        padding-bottom: 5px;
    }

    .day-slots.svelte-uixu6z {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 8px;
    }

    .slot-button.svelte-uixu6z {
        background: white;
        border: 2px solid #ddd;
        border-radius: 6px;
        padding: 8px;
        cursor: pointer;
        transition: all 0.2s ease;
        text-align: center;
        min-height: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .slot-button.svelte-uixu6z:hover {
        border-color: #fab45a;
        background-color: #fef9f3;
    }

    .slot-button.selected.svelte-uixu6z {
        border-color: #14695b;
        background-color: #e8f5f3;
        color: #14695b;
    }

    /* (unused) .slot-date {
        font-size: 0.8em;
        color: #666;
        margin-bottom: 2px;
    }*/

    .slot-time.svelte-uixu6z {
        font-weight: 600;
        font-size: 0.9em;
    }

    .submit-section.svelte-uixu6z {
        margin-top: 20px;
        padding-top: 15px;
        border-top: 1px solid #eee;
    }

    .selected-info.svelte-uixu6z {
        margin-bottom: 15px;
        padding: 10px;
        background-color: #e8f5f3;
        border-radius: 4px;
        color: #14695b;
        font-size: 0.9em;
    }

    .submit-button.svelte-uixu6z {
        width: 100%;
        font-weight: 700;
        height: 50px;
        background-color: #fab45a;
        border: 1px solid #000000;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .submit-button.svelte-uixu6z:hover:not(:disabled) {
        background-color: #14695b;
        color: white;
    }

    .submit-button.svelte-uixu6z:disabled {
        background-color: #ccc;
        border-color: #999;
        cursor: not-allowed;
        opacity: 0.6;
    }


    /* Optional styles */
    input.is-placeholder.svelte-dn1ov8 {
        color: transparent;
    }

    input.is-placeholder.svelte-dn1ov8::-webkit-datetime-edit {
        color: transparent;
    }

    div.svelte-dn1ov8 {
        display: flex;
        gap: 10px;
        flex-direction: row;
        justify-content: space-evenly;
        width: 100%;
    }

    input.svelte-dn1ov8 {

        width:100%;
        padding: 0.5rem;
        font-size: 1rem;
    }

    button.svelte-dn1ov8 {
        width: 100%;
        font-weight:700;
        height: 60px;
        background-color: #fab45a;
        border: 1px solid #000000;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;

    }

    button.svelte-dn1ov8:hover {
      background-color: #14695b;
      color:white;
    }


    /* Button styling */
    button.svelte-1klxqj0 span:where(.svelte-1klxqj0) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-1klxqj0 {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: white;

        /* Black border */
        border: 1px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
    }

    /* Button hover effect */
    button.svelte-1klxqj0:hover {
        background-color: #14695b;
        color:white;
    }

    /* Text inside the button */
    span.svelte-1klxqj0 {
        font-size: 1rem;
        font-weight: bold;
        color: #333;
    }


   .top-bar.svelte-10drgu8 {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px;
        background-color: transparent;
        border-bottom: 1px solid #000000;
        margin-bottom: 40px;

      }
      .filler.svelte-10drgu8 {
        width:50px;
      }

      .label.svelte-10drgu8 {
        font-size: x-large;
        color:#14695b;

      }

      .exit-button.svelte-10drgu8 {
        max-width: 50px;
      }

      .icon.svelte-10drgu8 {
        width: 50px;
        height: 50px;
      }
    p.svelte-10drgu8 {
        font-size: 1.2em;
    }
    .classcontainer.svelte-10drgu8{
        padding: 15px;
        background-color: #eeebdb;


        margin-bottom:15px;

        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;

        color:black;
        align-items: flex-start;

      }

  /* Notification checkbox styling */
  .notification-checkbox.svelte-10drgu8 {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #dee2e6;
  }

  .checkbox-label.svelte-10drgu8 {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin-bottom: 8px;
  }

  .checkbox-input.svelte-10drgu8 {
    margin-right: 10px;
    margin-left:10px;
    margin-top:10px;
    width: 18px;
    height: 18px;
    cursor: pointer;
  }

  .checkbox-text.svelte-10drgu8 {
    font-weight: 600;
    color: #495057;
    font-size: 16px;
  }

  .checkbox-description.svelte-10drgu8 {
    font-size: 14px;
    color: #6c757d;
    font-style: italic;
    margin-left: 28px;
    line-height: 1.4;
  }

  .comment-textarea.svelte-10drgu8 {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    font-size: 14px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    resize: vertical;
    font-family: inherit;
    transition: border-color 0.2s, background-color 0.2s;
  }

  .comment-textarea.svelte-10drgu8:enabled {
    background-color: white;
    border-color: #ced4da;
  }

  .comment-textarea.svelte-10drgu8:enabled:focus {
    outline: none;
    border-color: #14695b;
    box-shadow: 0 0 0 0.2rem rgba(20, 105, 91, 0.25);
  }

  .comment-textarea.svelte-10drgu8:disabled {
    background-color: #e9ecef;
    color: #6c757d;
    cursor: not-allowed;
  }


  div.svelte-76k83x{
    width:100%;
  }
  textarea.svelte-76k83x {
    width: 100%;
    height: 100px;
    border: 1px solid #000000;

    /* Box shadow */
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

    /* Rounded corners */
    border-radius: 8px;

    /* Adjust the padding for better text visibility */
    padding: 10px;

    /* Optional: Set a font for better readability */
    font-family: Arial, sans-serif;
    font-size: 16px;
    resize: vertical; /* Allows the user to resize the textarea vertically */
}

  button.svelte-76k83x span:where(.svelte-76k83x) {
        font-weight: 700;
        font-size: 1rem;
    }

  .confirm-button.svelte-76k83x {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Restore original orange styling */
        background-color: #fab45a;
        border: 1px solid #000000;
        color: #333;

        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;

        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        outline: none;
        cursor: pointer;
        background-image: none;
    }

    .confirm-button.svelte-76k83x:hover {
      background-color: #927043;
      border-color: #000000;
    }

    .confirm-button.svelte-76k83x:disabled {
      opacity: 0.7;
      cursor: not-allowed;
    }


.top-bar.svelte-7y17ts {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background-color: transparent;
    border-bottom: 1px solid #000000;
    margin-bottom: 40px;

  }
  .filler.svelte-7y17ts {
    width:50px;
  }

  .label.svelte-7y17ts {
    font-size: x-large;
    color:#14695b;

  }

  .exit-button.svelte-7y17ts {
    max-width: 50px;
  }

  .icon.svelte-7y17ts {
    width: 50px;
    height: 50px;
  }
p.svelte-7y17ts {
    font-size: 1.2em;
}
.classcontainer.svelte-7y17ts{
    padding: 15px;
    background-color: #eeebdb;
    display: flex;
    flex-direction: column;
    margin-bottom:15px;
    gap: 10px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    border-radius: 8px;
    flex: none;
    color:black;
    align-items: flex-start;

  }


     .container.svelte-1rvuz9i {
         display: flex;
         flex-direction: column;
         align-items: center;
         width:100%;

     }


     .top-bar.svelte-1rvuz9i {
         width: 100%;
         text-align: center;
         border-bottom: 2px solid #ccc;
         display: flex;
         flex-direction: row;
         justify-content: space-between;
         align-items: center;
         }



     .content.svelte-1rvuz9i {
       margin-top: 50px; /* Ensures the content is not under the top bar */
       color: #000;
       display:flex;
       justify-content: space-around;

     }

     .illustration.svelte-1rvuz9i {
       margin-top: 20px;
     }
     .filler.svelte-1rvuz9i{
         width:60px;
     }
     .label.svelte-1rvuz9i{
         font-size:23px;
     }
     .illustration.svelte-1rvuz9i img:where(.svelte-1rvuz9i) {
       width: 100%;
       height: auto;
       max-height:500px;
     }
     .exit-button.svelte-1rvuz9i{
         display:flex;
         justify-content: flex-end;
     }
     .exit-button.svelte-1rvuz9i img:where(.svelte-1rvuz9i){
         width:80%;
         max-width:60px;
     }


  .fa-star.svelte-1r6ht88 {
    font-size: 24px;
    cursor: pointer;
    color: #ddd;
  }
  .fa-star.checked.svelte-1r6ht88 {
    color: #14695b;
  }


  .tooltip-container.svelte-3qazws {
    display: inline-flex; /* Keep icon inline with text */
    position: relative;
    cursor: pointer;
    background-color: transparent;
    border: none;
    margin-left: 5px; /* Adds spacing between the text and the icon */
    font-size: 0.9em; /* Adjust the icon size to be smaller */
}

  .tooltip-icon.svelte-3qazws {
    font-size: x-small;
    color: #007BFF;
    border: 1px solid #007BFF;
    border-radius: 100%;
    padding: 1px 5px;
    font-weight: bold;
    margin-left: 5px;
  }

  .tooltip-box.svelte-3qazws {
    visibility: hidden;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    top: -160%;
    left: 55%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity 0.3s;
    white-space: normal; /* Allows wrapping of content */
    word-wrap: break-word; /* Ensures long words break */
    width:500px;
  }

  .tooltip-box.visible.svelte-3qazws {
    visibility: visible;
    opacity: 1;
  }

  .tooltip-box.svelte-3qazws::after {
    content: '';
    position: absolute;
    top: 100%;  /* Arrow pointing down */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
  }
  .close-icon.svelte-3qazws {
    position: absolute;
    top: 5px;
    right: 5px;
    font-size: 12px;
    color: #fff;
    cursor: default; /* No pointer interaction */
  }
  /* Mobile screen adjustments */
  @media (max-width: 600px) {
    .tooltip-box.svelte-3qazws {
      position: fixed;
      top:160px;
      width:200px;
    }

    .tooltip-container.svelte-3qazws {
      display: block;
      text-align: center;
    }
    button.svelte-3qazws{
      padding:0px;
    }
  }


    .checkbox-group.svelte-160m38z {

        padding-right: 10px;
        padding-bottom: 12px;
        padding-top: 12px;
        left: -10px;
        position: relative;
        display: flex;

        gap: 20px;
        background: #FFFFFF;

        border-radius: 8px;
        transition: background-color 0.3s ease, color 0.3s ease;
        align-items: flex-start;
        flex-direction: row-reverse;
        margin-top:10px;
    }

    /* Apply dark green background when selected class is active */
    .checkbox-group.selected.svelte-160m38z {
        margin-top:10px;
    }

    .leftSide.svelte-160m38z {
        position: relative;
        display: flex;
        align-items: center;
        gap: 10px;
        margin-left: 10px;
        left: -10px;
    }

    .leftSide.svelte-160m38z label:where(.svelte-160m38z) {
        font-size: 1rem;
        color: #333; /* Default label color */
        transition: color 0.3s ease;
        margin-left:10px;
    }


    input[type="checkbox"].svelte-160m38z {
        width: 24px;
        height: 24px;
        border-radius: 6px;
        border: 2px solid #333;
        background-color: white;
        appearance: none;
        outline: none;
        cursor: pointer;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        transition: background-color 0.3s ease;
    }

    /* Change checkbox color and style when checked */
    input[type="checkbox"].svelte-160m38z:checked {
        background-color: #14695B; /* Dark green */
        border: none;
        background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="20 6 9 17 4 12"/%3E%3C/svg%3E');
        background-repeat: no-repeat;
        background-position: center;
    }


.custom-label.svelte-avter0 {
    display: flex;
    flex-direction: row;  /* Horizontal alignment of text and icon */
    align-items: center;  /* Keep icon aligned with text vertically */
    margin-bottom: 5px;
    margin-top: 20px;
    font-size: 1.17em;
    font-weight: bold;
    gap: 5px; /* Space between text and the CommentTipComponent icon */
    flex-direction: row-reverse;
}

.top-bar.svelte-avter0 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background-color: transparent;
    border-bottom: 1px solid #000000;
    margin-bottom: 40px;
  }
  .filler.svelte-avter0 {
    width: 50px;
  }
  label.svelte-avter0{
    display:flex;
    flex-direction: row;
    align-items: center;
  }
  .label.svelte-avter0 {
    font-size: x-large;
  }

  .icon.svelte-avter0 {
    width: 50px;
    height: 50px;
  }
  .form-container.svelte-avter0{
      padding: 15px;
      background-color: white;
      display: flex;
      flex-direction: column;
      margin-bottom: 15px;
      gap: 10px;
      box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
      border-radius: 8px;
      flex: none;
      color: black;
      align-items: flex-start;
  }
  button.svelte-avter0{
      height: 60px;
      width: 100%;
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: center;
      padding: 12px 20px;
      gap: 10px;
      border-radius: 6px;
      border: 2px solid #333;
      font-weight: bold;
      font-size: large;
      background: white;
      box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
      border-radius: 8px;
      transition: background-color 0.3s ease, color 0.3s ease; /* Add color transition */
      }
      button.svelte-avter0:hover{
        background-color: #14695b;
        color:white;
      }

/*!
 * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2024 Fonticons, Inc.
 */
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-regular,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-brands:before,.fa-regular:before,.fa-solid:before,.fa:before,.fab:before,.far:before,.fas:before{content:var(--fa)}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}

.fa-0{--fa:"\30"}.fa-1{--fa:"\31"}.fa-2{--fa:"\32"}.fa-3{--fa:"\33"}.fa-4{--fa:"\34"}.fa-5{--fa:"\35"}.fa-6{--fa:"\36"}.fa-7{--fa:"\37"}.fa-8{--fa:"\38"}.fa-9{--fa:"\39"}.fa-fill-drip{--fa:"\f576"}.fa-arrows-to-circle{--fa:"\e4bd"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138"}.fa-at{--fa:"\40"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed"}.fa-text-height{--fa:"\f034"}.fa-user-times,.fa-user-xmark{--fa:"\f235"}.fa-stethoscope{--fa:"\f0f1"}.fa-comment-alt,.fa-message{--fa:"\f27a"}.fa-info{--fa:"\f129"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422"}.fa-explosion{--fa:"\e4e9"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c"}.fa-wave-square{--fa:"\f83e"}.fa-ring{--fa:"\f70b"}.fa-building-un{--fa:"\e4d9"}.fa-dice-three{--fa:"\f527"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073"}.fa-anchor-circle-check{--fa:"\e4aa"}.fa-building-circle-arrow-right{--fa:"\e4d1"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f"}.fa-arrows-up-to-line{--fa:"\e4c2"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056"}.fa-door-open{--fa:"\f52b"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5"}.fa-atom{--fa:"\f5d2"}.fa-soap{--fa:"\e06e"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539"}.fa-bridge-circle-check{--fa:"\e4c9"}.fa-pump-medical{--fa:"\e06a"}.fa-fingerprint{--fa:"\f577"}.fa-hand-point-right{--fa:"\f0a4"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689"}.fa-forward-step,.fa-step-forward{--fa:"\f051"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8"}.fa-flag-checkered{--fa:"\f11e"}.fa-football,.fa-football-ball{--fa:"\f44e"}.fa-school-circle-exclamation{--fa:"\e56c"}.fa-crop{--fa:"\f125"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103"}.fa-users-rectangle{--fa:"\e594"}.fa-people-roof{--fa:"\e537"}.fa-people-line{--fa:"\e534"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc"}.fa-diagram-predecessor{--fa:"\e477"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a"}.fa-male,.fa-person{--fa:"\f183"}.fa-laptop{--fa:"\f109"}.fa-file-csv{--fa:"\f6dd"}.fa-menorah{--fa:"\f676"}.fa-truck-plane{--fa:"\e58f"}.fa-record-vinyl{--fa:"\f8d9"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587"}.fa-bong{--fa:"\f55c"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b"}.fa-arrow-down-up-across-line{--fa:"\e4af"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5"}.fa-jar-wheat{--fa:"\e517"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674"}.fa-file-circle-exclamation{--fa:"\e4eb"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e"}.fa-pager{--fa:"\f815"}.fa-address-book,.fa-contact-book{--fa:"\f2b9"}.fa-strikethrough{--fa:"\f0cc"}.fa-k{--fa:"\4b"}.fa-landmark-flag{--fa:"\e51c"}.fa-pencil,.fa-pencil-alt{--fa:"\f303"}.fa-backward{--fa:"\f04a"}.fa-caret-right{--fa:"\f0da"}.fa-comments{--fa:"\f086"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea"}.fa-code-pull-request{--fa:"\e13c"}.fa-clipboard-list{--fa:"\f46d"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de"}.fa-user-check{--fa:"\f4fc"}.fa-vial-virus{--fa:"\e597"}.fa-sheet-plastic{--fa:"\e571"}.fa-blog{--fa:"\f781"}.fa-user-ninja{--fa:"\f504"}.fa-person-arrow-up-from-line{--fa:"\e539"}.fa-scroll-torah,.fa-torah{--fa:"\f6a0"}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:"\f458"}.fa-toggle-off{--fa:"\f204"}.fa-archive,.fa-box-archive{--fa:"\f187"}.fa-person-drowning{--fa:"\e545"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:"\f886"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:"\f58a"}.fa-spray-can{--fa:"\f5bd"}.fa-truck-monster{--fa:"\f63b"}.fa-w{--fa:"\57"}.fa-earth-africa,.fa-globe-africa{--fa:"\f57c"}.fa-rainbow{--fa:"\f75b"}.fa-circle-notch{--fa:"\f1ce"}.fa-tablet-alt,.fa-tablet-screen-button{--fa:"\f3fa"}.fa-paw{--fa:"\f1b0"}.fa-cloud{--fa:"\f0c2"}.fa-trowel-bricks{--fa:"\e58a"}.fa-face-flushed,.fa-flushed{--fa:"\f579"}.fa-hospital-user{--fa:"\f80d"}.fa-tent-arrow-left-right{--fa:"\e57f"}.fa-gavel,.fa-legal{--fa:"\f0e3"}.fa-binoculars{--fa:"\f1e5"}.fa-microphone-slash{--fa:"\f131"}.fa-box-tissue{--fa:"\e05b"}.fa-motorcycle{--fa:"\f21c"}.fa-bell-concierge,.fa-concierge-bell{--fa:"\f562"}.fa-pen-ruler,.fa-pencil-ruler{--fa:"\f5ae"}.fa-people-arrows,.fa-people-arrows-left-right{--fa:"\e068"}.fa-mars-and-venus-burst{--fa:"\e523"}.fa-caret-square-right,.fa-square-caret-right{--fa:"\f152"}.fa-cut,.fa-scissors{--fa:"\f0c4"}.fa-sun-plant-wilt{--fa:"\e57a"}.fa-toilets-portable{--fa:"\e584"}.fa-hockey-puck{--fa:"\f453"}.fa-table{--fa:"\f0ce"}.fa-magnifying-glass-arrow-right{--fa:"\e521"}.fa-digital-tachograph,.fa-tachograph-digital{--fa:"\f566"}.fa-users-slash{--fa:"\e073"}.fa-clover{--fa:"\e139"}.fa-mail-reply,.fa-reply{--fa:"\f3e5"}.fa-star-and-crescent{--fa:"\f699"}.fa-house-fire{--fa:"\e50c"}.fa-minus-square,.fa-square-minus{--fa:"\f146"}.fa-helicopter{--fa:"\f533"}.fa-compass{--fa:"\f14e"}.fa-caret-square-down,.fa-square-caret-down{--fa:"\f150"}.fa-file-circle-question{--fa:"\e4ef"}.fa-laptop-code{--fa:"\f5fc"}.fa-swatchbook{--fa:"\f5c3"}.fa-prescription-bottle{--fa:"\f485"}.fa-bars,.fa-navicon{--fa:"\f0c9"}.fa-people-group{--fa:"\e533"}.fa-hourglass-3,.fa-hourglass-end{--fa:"\f253"}.fa-heart-broken,.fa-heart-crack{--fa:"\f7a9"}.fa-external-link-square-alt,.fa-square-up-right{--fa:"\f360"}.fa-face-kiss-beam,.fa-kiss-beam{--fa:"\f597"}.fa-film{--fa:"\f008"}.fa-ruler-horizontal{--fa:"\f547"}.fa-people-robbery{--fa:"\e536"}.fa-lightbulb{--fa:"\f0eb"}.fa-caret-left{--fa:"\f0d9"}.fa-circle-exclamation,.fa-exclamation-circle{--fa:"\f06a"}.fa-school-circle-xmark{--fa:"\e56d"}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:"\f08b"}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:"\f13a"}.fa-unlock-alt,.fa-unlock-keyhole{--fa:"\f13e"}.fa-cloud-showers-heavy{--fa:"\f740"}.fa-headphones-alt,.fa-headphones-simple{--fa:"\f58f"}.fa-sitemap{--fa:"\f0e8"}.fa-circle-dollar-to-slot,.fa-donate{--fa:"\f4b9"}.fa-memory{--fa:"\f538"}.fa-road-spikes{--fa:"\e568"}.fa-fire-burner{--fa:"\e4f1"}.fa-flag{--fa:"\f024"}.fa-hanukiah{--fa:"\f6e6"}.fa-feather{--fa:"\f52d"}.fa-volume-down,.fa-volume-low{--fa:"\f027"}.fa-comment-slash{--fa:"\f4b3"}.fa-cloud-sun-rain{--fa:"\f743"}.fa-compress{--fa:"\f066"}.fa-wheat-alt,.fa-wheat-awn{--fa:"\e2cd"}.fa-ankh{--fa:"\f644"}.fa-hands-holding-child{--fa:"\e4fa"}.fa-asterisk{--fa:"\2a"}.fa-check-square,.fa-square-check{--fa:"\f14a"}.fa-peseta-sign{--fa:"\e221"}.fa-header,.fa-heading{--fa:"\f1dc"}.fa-ghost{--fa:"\f6e2"}.fa-list,.fa-list-squares{--fa:"\f03a"}.fa-phone-square-alt,.fa-square-phone-flip{--fa:"\f87b"}.fa-cart-plus{--fa:"\f217"}.fa-gamepad{--fa:"\f11b"}.fa-circle-dot,.fa-dot-circle{--fa:"\f192"}.fa-dizzy,.fa-face-dizzy{--fa:"\f567"}.fa-egg{--fa:"\f7fb"}.fa-house-medical-circle-xmark{--fa:"\e513"}.fa-campground{--fa:"\f6bb"}.fa-folder-plus{--fa:"\f65e"}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:"\f1e3"}.fa-paint-brush,.fa-paintbrush{--fa:"\f1fc"}.fa-lock{--fa:"\f023"}.fa-gas-pump{--fa:"\f52f"}.fa-hot-tub,.fa-hot-tub-person{--fa:"\f593"}.fa-map-location,.fa-map-marked{--fa:"\f59f"}.fa-house-flood-water{--fa:"\e50e"}.fa-tree{--fa:"\f1bb"}.fa-bridge-lock{--fa:"\e4cc"}.fa-sack-dollar{--fa:"\f81d"}.fa-edit,.fa-pen-to-square{--fa:"\f044"}.fa-car-side{--fa:"\f5e4"}.fa-share-alt,.fa-share-nodes{--fa:"\f1e0"}.fa-heart-circle-minus{--fa:"\e4ff"}.fa-hourglass-2,.fa-hourglass-half{--fa:"\f252"}.fa-microscope{--fa:"\f610"}.fa-sink{--fa:"\e06d"}.fa-bag-shopping,.fa-shopping-bag{--fa:"\f290"}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:"\f881"}.fa-mitten{--fa:"\f7b5"}.fa-person-rays{--fa:"\e54d"}.fa-users{--fa:"\f0c0"}.fa-eye-slash{--fa:"\f070"}.fa-flask-vial{--fa:"\e4f3"}.fa-hand,.fa-hand-paper{--fa:"\f256"}.fa-om{--fa:"\f679"}.fa-worm{--fa:"\e599"}.fa-house-circle-xmark{--fa:"\e50b"}.fa-plug{--fa:"\f1e6"}.fa-chevron-up{--fa:"\f077"}.fa-hand-spock{--fa:"\f259"}.fa-stopwatch{--fa:"\f2f2"}.fa-face-kiss,.fa-kiss{--fa:"\f596"}.fa-bridge-circle-xmark{--fa:"\e4cb"}.fa-face-grin-tongue,.fa-grin-tongue{--fa:"\f589"}.fa-chess-bishop{--fa:"\f43a"}.fa-face-grin-wink,.fa-grin-wink{--fa:"\f58c"}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:"\f2a4"}.fa-road-circle-check{--fa:"\e564"}.fa-dice-five{--fa:"\f523"}.fa-rss-square,.fa-square-rss{--fa:"\f143"}.fa-land-mine-on{--fa:"\e51b"}.fa-i-cursor{--fa:"\f246"}.fa-stamp{--fa:"\f5bf"}.fa-stairs{--fa:"\e289"}.fa-i{--fa:"\49"}.fa-hryvnia,.fa-hryvnia-sign{--fa:"\f6f2"}.fa-pills{--fa:"\f484"}.fa-face-grin-wide,.fa-grin-alt{--fa:"\f581"}.fa-tooth{--fa:"\f5c9"}.fa-v{--fa:"\56"}.fa-bangladeshi-taka-sign{--fa:"\e2e6"}.fa-bicycle{--fa:"\f206"}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:"\e579"}.fa-head-side-cough-slash{--fa:"\e062"}.fa-ambulance,.fa-truck-medical{--fa:"\f0f9"}.fa-wheat-awn-circle-exclamation{--fa:"\e598"}.fa-snowman{--fa:"\f7d0"}.fa-mortar-pestle{--fa:"\f5a7"}.fa-road-barrier{--fa:"\e562"}.fa-school{--fa:"\f549"}.fa-igloo{--fa:"\f7ae"}.fa-joint{--fa:"\f595"}.fa-angle-right{--fa:"\f105"}.fa-horse{--fa:"\f6f0"}.fa-q{--fa:"\51"}.fa-g{--fa:"\47"}.fa-notes-medical{--fa:"\f481"}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:"\f2c9"}.fa-dong-sign{--fa:"\e169"}.fa-capsules{--fa:"\f46b"}.fa-poo-bolt,.fa-poo-storm{--fa:"\f75a"}.fa-face-frown-open,.fa-frown-open{--fa:"\f57a"}.fa-hand-point-up{--fa:"\f0a6"}.fa-money-bill{--fa:"\f0d6"}.fa-bookmark{--fa:"\f02e"}.fa-align-justify{--fa:"\f039"}.fa-umbrella-beach{--fa:"\f5ca"}.fa-helmet-un{--fa:"\e503"}.fa-bullseye{--fa:"\f140"}.fa-bacon{--fa:"\f7e5"}.fa-hand-point-down{--fa:"\f0a7"}.fa-arrow-up-from-bracket{--fa:"\e09a"}.fa-folder,.fa-folder-blank{--fa:"\f07b"}.fa-file-medical-alt,.fa-file-waveform{--fa:"\f478"}.fa-radiation{--fa:"\f7b9"}.fa-chart-simple{--fa:"\e473"}.fa-mars-stroke{--fa:"\f229"}.fa-vial{--fa:"\f492"}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:"\f624"}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:"\e2ca"}.fa-e{--fa:"\45"}.fa-pen-alt,.fa-pen-clip{--fa:"\f305"}.fa-bridge-circle-exclamation{--fa:"\e4ca"}.fa-user{--fa:"\f007"}.fa-school-circle-check{--fa:"\e56b"}.fa-dumpster{--fa:"\f793"}.fa-shuttle-van,.fa-van-shuttle{--fa:"\f5b6"}.fa-building-user{--fa:"\e4da"}.fa-caret-square-left,.fa-square-caret-left{--fa:"\f191"}.fa-highlighter{--fa:"\f591"}.fa-key{--fa:"\f084"}.fa-bullhorn{--fa:"\f0a1"}.fa-globe{--fa:"\f0ac"}.fa-synagogue{--fa:"\f69b"}.fa-person-half-dress{--fa:"\e548"}.fa-road-bridge{--fa:"\e563"}.fa-location-arrow{--fa:"\f124"}.fa-c{--fa:"\43"}.fa-tablet-button{--fa:"\f10a"}.fa-building-lock{--fa:"\e4d6"}.fa-pizza-slice{--fa:"\f818"}.fa-money-bill-wave{--fa:"\f53a"}.fa-area-chart,.fa-chart-area{--fa:"\f1fe"}.fa-house-flag{--fa:"\e50d"}.fa-person-circle-minus{--fa:"\e540"}.fa-ban,.fa-cancel{--fa:"\f05e"}.fa-camera-rotate{--fa:"\e0d8"}.fa-air-freshener,.fa-spray-can-sparkles{--fa:"\f5d0"}.fa-star{--fa:"\f005"}.fa-repeat{--fa:"\f363"}.fa-cross{--fa:"\f654"}.fa-box{--fa:"\f466"}.fa-venus-mars{--fa:"\f228"}.fa-arrow-pointer,.fa-mouse-pointer{--fa:"\f245"}.fa-expand-arrows-alt,.fa-maximize{--fa:"\f31e"}.fa-charging-station{--fa:"\f5e7"}.fa-shapes,.fa-triangle-circle-square{--fa:"\f61f"}.fa-random,.fa-shuffle{--fa:"\f074"}.fa-person-running,.fa-running{--fa:"\f70c"}.fa-mobile-retro{--fa:"\e527"}.fa-grip-lines-vertical{--fa:"\f7a5"}.fa-spider{--fa:"\f717"}.fa-hands-bound{--fa:"\e4f9"}.fa-file-invoice-dollar{--fa:"\f571"}.fa-plane-circle-exclamation{--fa:"\e556"}.fa-x-ray{--fa:"\f497"}.fa-spell-check{--fa:"\f891"}.fa-slash{--fa:"\f715"}.fa-computer-mouse,.fa-mouse{--fa:"\f8cc"}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:"\f090"}.fa-shop-slash,.fa-store-alt-slash{--fa:"\e070"}.fa-server{--fa:"\f233"}.fa-virus-covid-slash{--fa:"\e4a9"}.fa-shop-lock{--fa:"\e4a5"}.fa-hourglass-1,.fa-hourglass-start{--fa:"\f251"}.fa-blender-phone{--fa:"\f6b6"}.fa-building-wheat{--fa:"\e4db"}.fa-person-breastfeeding{--fa:"\e53a"}.fa-right-to-bracket,.fa-sign-in-alt{--fa:"\f2f6"}.fa-venus{--fa:"\f221"}.fa-passport{--fa:"\f5ab"}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:"\e68f"}.fa-heart-pulse,.fa-heartbeat{--fa:"\f21e"}.fa-people-carry,.fa-people-carry-box{--fa:"\f4ce"}.fa-temperature-high{--fa:"\f769"}.fa-microchip{--fa:"\f2db"}.fa-crown{--fa:"\f521"}.fa-weight-hanging{--fa:"\f5cd"}.fa-xmarks-lines{--fa:"\e59a"}.fa-file-prescription{--fa:"\f572"}.fa-weight,.fa-weight-scale{--fa:"\f496"}.fa-user-friends,.fa-user-group{--fa:"\f500"}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:"\f15e"}.fa-chess-knight{--fa:"\f441"}.fa-face-laugh-squint,.fa-laugh-squint{--fa:"\f59b"}.fa-wheelchair{--fa:"\f193"}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:"\f0aa"}.fa-toggle-on{--fa:"\f205"}.fa-person-walking,.fa-walking{--fa:"\f554"}.fa-l{--fa:"\4c"}.fa-fire{--fa:"\f06d"}.fa-bed-pulse,.fa-procedures{--fa:"\f487"}.fa-shuttle-space,.fa-space-shuttle{--fa:"\f197"}.fa-face-laugh,.fa-laugh{--fa:"\f599"}.fa-folder-open{--fa:"\f07c"}.fa-heart-circle-plus{--fa:"\e500"}.fa-code-fork{--fa:"\e13b"}.fa-city{--fa:"\f64f"}.fa-microphone-alt,.fa-microphone-lines{--fa:"\f3c9"}.fa-pepper-hot{--fa:"\f816"}.fa-unlock{--fa:"\f09c"}.fa-colon-sign{--fa:"\e140"}.fa-headset{--fa:"\f590"}.fa-store-slash{--fa:"\e071"}.fa-road-circle-xmark{--fa:"\e566"}.fa-user-minus{--fa:"\f503"}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:"\f22a"}.fa-champagne-glasses,.fa-glass-cheers{--fa:"\f79f"}.fa-clipboard{--fa:"\f328"}.fa-house-circle-exclamation{--fa:"\e50a"}.fa-file-arrow-up,.fa-file-upload{--fa:"\f574"}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:"\f1eb"}.fa-bath,.fa-bathtub{--fa:"\f2cd"}.fa-underline{--fa:"\f0cd"}.fa-user-edit,.fa-user-pen{--fa:"\f4ff"}.fa-signature{--fa:"\f5b7"}.fa-stroopwafel{--fa:"\f551"}.fa-bold{--fa:"\f032"}.fa-anchor-lock{--fa:"\e4ad"}.fa-building-ngo{--fa:"\e4d7"}.fa-manat-sign{--fa:"\e1d5"}.fa-not-equal{--fa:"\f53e"}.fa-border-style,.fa-border-top-left{--fa:"\f853"}.fa-map-location-dot,.fa-map-marked-alt{--fa:"\f5a0"}.fa-jedi{--fa:"\f669"}.fa-poll,.fa-square-poll-vertical{--fa:"\f681"}.fa-mug-hot{--fa:"\f7b6"}.fa-battery-car,.fa-car-battery{--fa:"\f5df"}.fa-gift{--fa:"\f06b"}.fa-dice-two{--fa:"\f528"}.fa-chess-queen{--fa:"\f445"}.fa-glasses{--fa:"\f530"}.fa-chess-board{--fa:"\f43c"}.fa-building-circle-check{--fa:"\e4d2"}.fa-person-chalkboard{--fa:"\e53d"}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:"\f22b"}.fa-hand-back-fist,.fa-hand-rock{--fa:"\f255"}.fa-caret-square-up,.fa-square-caret-up{--fa:"\f151"}.fa-cloud-showers-water{--fa:"\e4e4"}.fa-bar-chart,.fa-chart-bar{--fa:"\f080"}.fa-hands-bubbles,.fa-hands-wash{--fa:"\e05e"}.fa-less-than-equal{--fa:"\f537"}.fa-train{--fa:"\f238"}.fa-eye-low-vision,.fa-low-vision{--fa:"\f2a8"}.fa-crow{--fa:"\f520"}.fa-sailboat{--fa:"\e445"}.fa-window-restore{--fa:"\f2d2"}.fa-plus-square,.fa-square-plus{--fa:"\f0fe"}.fa-torii-gate{--fa:"\f6a1"}.fa-frog{--fa:"\f52e"}.fa-bucket{--fa:"\e4cf"}.fa-image{--fa:"\f03e"}.fa-microphone{--fa:"\f130"}.fa-cow{--fa:"\f6c8"}.fa-caret-up{--fa:"\f0d8"}.fa-screwdriver{--fa:"\f54a"}.fa-folder-closed{--fa:"\e185"}.fa-house-tsunami{--fa:"\e515"}.fa-square-nfi{--fa:"\e576"}.fa-arrow-up-from-ground-water{--fa:"\e4b5"}.fa-glass-martini-alt,.fa-martini-glass{--fa:"\f57b"}.fa-square-binary{--fa:"\e69b"}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:"\f2ea"}.fa-columns,.fa-table-columns{--fa:"\f0db"}.fa-lemon{--fa:"\f094"}.fa-head-side-mask{--fa:"\e063"}.fa-handshake{--fa:"\f2b5"}.fa-gem{--fa:"\f3a5"}.fa-dolly,.fa-dolly-box{--fa:"\f472"}.fa-smoking{--fa:"\f48d"}.fa-compress-arrows-alt,.fa-minimize{--fa:"\f78c"}.fa-monument{--fa:"\f5a6"}.fa-snowplow{--fa:"\f7d2"}.fa-angle-double-right,.fa-angles-right{--fa:"\f101"}.fa-cannabis{--fa:"\f55f"}.fa-circle-play,.fa-play-circle{--fa:"\f144"}.fa-tablets{--fa:"\f490"}.fa-ethernet{--fa:"\f796"}.fa-eur,.fa-euro,.fa-euro-sign{--fa:"\f153"}.fa-chair{--fa:"\f6c0"}.fa-check-circle,.fa-circle-check{--fa:"\f058"}.fa-circle-stop,.fa-stop-circle{--fa:"\f28d"}.fa-compass-drafting,.fa-drafting-compass{--fa:"\f568"}.fa-plate-wheat{--fa:"\e55a"}.fa-icicles{--fa:"\f7ad"}.fa-person-shelter{--fa:"\e54f"}.fa-neuter{--fa:"\f22c"}.fa-id-badge{--fa:"\f2c1"}.fa-marker{--fa:"\f5a1"}.fa-face-laugh-beam,.fa-laugh-beam{--fa:"\f59a"}.fa-helicopter-symbol{--fa:"\e502"}.fa-universal-access{--fa:"\f29a"}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:"\f139"}.fa-lari-sign{--fa:"\e1c8"}.fa-volcano{--fa:"\f770"}.fa-person-walking-dashed-line-arrow-right{--fa:"\e553"}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:"\f154"}.fa-viruses{--fa:"\e076"}.fa-square-person-confined{--fa:"\e577"}.fa-user-tie{--fa:"\f508"}.fa-arrow-down-long,.fa-long-arrow-down{--fa:"\f175"}.fa-tent-arrow-down-to-line{--fa:"\e57e"}.fa-certificate{--fa:"\f0a3"}.fa-mail-reply-all,.fa-reply-all{--fa:"\f122"}.fa-suitcase{--fa:"\f0f2"}.fa-person-skating,.fa-skating{--fa:"\f7c5"}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:"\f662"}.fa-camera-retro{--fa:"\f083"}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:"\f0ab"}.fa-arrow-right-to-file,.fa-file-import{--fa:"\f56f"}.fa-external-link-square,.fa-square-arrow-up-right{--fa:"\f14c"}.fa-box-open{--fa:"\f49e"}.fa-scroll{--fa:"\f70e"}.fa-spa{--fa:"\f5bb"}.fa-location-pin-lock{--fa:"\e51f"}.fa-pause{--fa:"\f04c"}.fa-hill-avalanche{--fa:"\e507"}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:"\f2cb"}.fa-bomb{--fa:"\f1e2"}.fa-registered{--fa:"\f25d"}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:"\f2bb"}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:"\f516"}.fa-subscript{--fa:"\f12c"}.fa-diamond-turn-right,.fa-directions{--fa:"\f5eb"}.fa-burst{--fa:"\e4dc"}.fa-house-laptop,.fa-laptop-house{--fa:"\e066"}.fa-face-tired,.fa-tired{--fa:"\f5c8"}.fa-money-bills{--fa:"\e1f3"}.fa-smog{--fa:"\f75f"}.fa-crutch{--fa:"\f7f7"}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:"\f0ee"}.fa-palette{--fa:"\f53f"}.fa-arrows-turn-right{--fa:"\e4c0"}.fa-vest{--fa:"\e085"}.fa-ferry{--fa:"\e4ea"}.fa-arrows-down-to-people{--fa:"\e4b9"}.fa-seedling,.fa-sprout{--fa:"\f4d8"}.fa-arrows-alt-h,.fa-left-right{--fa:"\f337"}.fa-boxes-packing{--fa:"\e4c7"}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:"\f0a8"}.fa-group-arrows-rotate{--fa:"\e4f6"}.fa-bowl-food{--fa:"\e4c6"}.fa-candy-cane{--fa:"\f786"}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:"\f160"}.fa-cloud-bolt,.fa-thunderstorm{--fa:"\f76c"}.fa-remove-format,.fa-text-slash{--fa:"\f87d"}.fa-face-smile-wink,.fa-smile-wink{--fa:"\f4da"}.fa-file-word{--fa:"\f1c2"}.fa-file-powerpoint{--fa:"\f1c4"}.fa-arrows-h,.fa-arrows-left-right{--fa:"\f07e"}.fa-house-lock{--fa:"\e510"}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:"\f0ed"}.fa-children{--fa:"\e4e1"}.fa-blackboard,.fa-chalkboard{--fa:"\f51b"}.fa-user-alt-slash,.fa-user-large-slash{--fa:"\f4fa"}.fa-envelope-open{--fa:"\f2b6"}.fa-handshake-alt-slash,.fa-handshake-simple-slash{--fa:"\e05f"}.fa-mattress-pillow{--fa:"\e525"}.fa-guarani-sign{--fa:"\e19a"}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:"\f021"}.fa-fire-extinguisher{--fa:"\f134"}.fa-cruzeiro-sign{--fa:"\e152"}.fa-greater-than-equal{--fa:"\f532"}.fa-shield-alt,.fa-shield-halved{--fa:"\f3ed"}.fa-atlas,.fa-book-atlas{--fa:"\f558"}.fa-virus{--fa:"\e074"}.fa-envelope-circle-check{--fa:"\e4e8"}.fa-layer-group{--fa:"\f5fd"}.fa-arrows-to-dot{--fa:"\e4be"}.fa-archway{--fa:"\f557"}.fa-heart-circle-check{--fa:"\e4fd"}.fa-house-chimney-crack,.fa-house-damage{--fa:"\f6f1"}.fa-file-archive,.fa-file-zipper{--fa:"\f1c6"}.fa-square{--fa:"\f0c8"}.fa-glass-martini,.fa-martini-glass-empty{--fa:"\f000"}.fa-couch{--fa:"\f4b8"}.fa-cedi-sign{--fa:"\e0df"}.fa-italic{--fa:"\f033"}.fa-table-cells-column-lock{--fa:"\e678"}.fa-church{--fa:"\f51d"}.fa-comments-dollar{--fa:"\f653"}.fa-democrat{--fa:"\f747"}.fa-z{--fa:"\5a"}.fa-person-skiing,.fa-skiing{--fa:"\f7c9"}.fa-road-lock{--fa:"\e567"}.fa-a{--fa:"\41"}.fa-temperature-arrow-down,.fa-temperature-down{--fa:"\e03f"}.fa-feather-alt,.fa-feather-pointed{--fa:"\f56b"}.fa-p{--fa:"\50"}.fa-snowflake{--fa:"\f2dc"}.fa-newspaper{--fa:"\f1ea"}.fa-ad,.fa-rectangle-ad{--fa:"\f641"}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:"\f0a9"}.fa-filter-circle-xmark{--fa:"\e17b"}.fa-locust{--fa:"\e520"}.fa-sort,.fa-unsorted{--fa:"\f0dc"}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:"\f0cb"}.fa-person-dress-burst{--fa:"\e544"}.fa-money-check-alt,.fa-money-check-dollar{--fa:"\f53d"}.fa-vector-square{--fa:"\f5cb"}.fa-bread-slice{--fa:"\f7ec"}.fa-language{--fa:"\f1ab"}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:"\f598"}.fa-filter{--fa:"\f0b0"}.fa-question{--fa:"\3f"}.fa-file-signature{--fa:"\f573"}.fa-arrows-alt,.fa-up-down-left-right{--fa:"\f0b2"}.fa-house-chimney-user{--fa:"\e065"}.fa-hand-holding-heart{--fa:"\f4be"}.fa-puzzle-piece{--fa:"\f12e"}.fa-money-check{--fa:"\f53c"}.fa-star-half-alt,.fa-star-half-stroke{--fa:"\f5c0"}.fa-code{--fa:"\f121"}.fa-glass-whiskey,.fa-whiskey-glass{--fa:"\f7a0"}.fa-building-circle-exclamation{--fa:"\e4d3"}.fa-magnifying-glass-chart{--fa:"\e522"}.fa-arrow-up-right-from-square,.fa-external-link{--fa:"\f08e"}.fa-cubes-stacked{--fa:"\e4e6"}.fa-krw,.fa-won,.fa-won-sign{--fa:"\f159"}.fa-virus-covid{--fa:"\e4a8"}.fa-austral-sign{--fa:"\e0a9"}.fa-f{--fa:"\46"}.fa-leaf{--fa:"\f06c"}.fa-road{--fa:"\f018"}.fa-cab,.fa-taxi{--fa:"\f1ba"}.fa-person-circle-plus{--fa:"\e541"}.fa-chart-pie,.fa-pie-chart{--fa:"\f200"}.fa-bolt-lightning{--fa:"\e0b7"}.fa-sack-xmark{--fa:"\e56a"}.fa-file-excel{--fa:"\f1c3"}.fa-file-contract{--fa:"\f56c"}.fa-fish-fins{--fa:"\e4f2"}.fa-building-flag{--fa:"\e4d5"}.fa-face-grin-beam,.fa-grin-beam{--fa:"\f582"}.fa-object-ungroup{--fa:"\f248"}.fa-poop{--fa:"\f619"}.fa-location-pin,.fa-map-marker{--fa:"\f041"}.fa-kaaba{--fa:"\f66b"}.fa-toilet-paper{--fa:"\f71e"}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:"\f807"}.fa-eject{--fa:"\f052"}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:"\f35a"}.fa-plane-circle-check{--fa:"\e555"}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:"\f5a5"}.fa-object-group{--fa:"\f247"}.fa-chart-line,.fa-line-chart{--fa:"\f201"}.fa-mask-ventilator{--fa:"\e524"}.fa-arrow-right{--fa:"\f061"}.fa-map-signs,.fa-signs-post{--fa:"\f277"}.fa-cash-register{--fa:"\f788"}.fa-person-circle-question{--fa:"\e542"}.fa-h{--fa:"\48"}.fa-tarp{--fa:"\e57b"}.fa-screwdriver-wrench,.fa-tools{--fa:"\f7d9"}.fa-arrows-to-eye{--fa:"\e4bf"}.fa-plug-circle-bolt{--fa:"\e55b"}.fa-heart{--fa:"\f004"}.fa-mars-and-venus{--fa:"\f224"}.fa-home-user,.fa-house-user{--fa:"\e1b0"}.fa-dumpster-fire{--fa:"\f794"}.fa-house-crack{--fa:"\e3b1"}.fa-cocktail,.fa-martini-glass-citrus{--fa:"\f561"}.fa-face-surprise,.fa-surprise{--fa:"\f5c2"}.fa-bottle-water{--fa:"\e4c5"}.fa-circle-pause,.fa-pause-circle{--fa:"\f28b"}.fa-toilet-paper-slash{--fa:"\e072"}.fa-apple-alt,.fa-apple-whole{--fa:"\f5d1"}.fa-kitchen-set{--fa:"\e51a"}.fa-r{--fa:"\52"}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:"\f2ca"}.fa-cube{--fa:"\f1b2"}.fa-bitcoin-sign{--fa:"\e0b4"}.fa-shield-dog{--fa:"\e573"}.fa-solar-panel{--fa:"\f5ba"}.fa-lock-open{--fa:"\f3c1"}.fa-elevator{--fa:"\e16d"}.fa-money-bill-transfer{--fa:"\e528"}.fa-money-bill-trend-up{--fa:"\e529"}.fa-house-flood-water-circle-arrow-right{--fa:"\e50f"}.fa-poll-h,.fa-square-poll-horizontal{--fa:"\f682"}.fa-circle{--fa:"\f111"}.fa-backward-fast,.fa-fast-backward{--fa:"\f049"}.fa-recycle{--fa:"\f1b8"}.fa-user-astronaut{--fa:"\f4fb"}.fa-plane-slash{--fa:"\e069"}.fa-trademark{--fa:"\f25c"}.fa-basketball,.fa-basketball-ball{--fa:"\f434"}.fa-satellite-dish{--fa:"\f7c0"}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:"\f35b"}.fa-mobile-alt,.fa-mobile-screen-button{--fa:"\f3cd"}.fa-volume-high,.fa-volume-up{--fa:"\f028"}.fa-users-rays{--fa:"\e593"}.fa-wallet{--fa:"\f555"}.fa-clipboard-check{--fa:"\f46c"}.fa-file-audio{--fa:"\f1c7"}.fa-burger,.fa-hamburger{--fa:"\f805"}.fa-wrench{--fa:"\f0ad"}.fa-bugs{--fa:"\e4d0"}.fa-rupee,.fa-rupee-sign{--fa:"\f156"}.fa-file-image{--fa:"\f1c5"}.fa-circle-question,.fa-question-circle{--fa:"\f059"}.fa-plane-departure{--fa:"\f5b0"}.fa-handshake-slash{--fa:"\e060"}.fa-book-bookmark{--fa:"\e0bb"}.fa-code-branch{--fa:"\f126"}.fa-hat-cowboy{--fa:"\f8c0"}.fa-bridge{--fa:"\e4c8"}.fa-phone-alt,.fa-phone-flip{--fa:"\f879"}.fa-truck-front{--fa:"\e2b7"}.fa-cat{--fa:"\f6be"}.fa-anchor-circle-exclamation{--fa:"\e4ab"}.fa-truck-field{--fa:"\e58d"}.fa-route{--fa:"\f4d7"}.fa-clipboard-question{--fa:"\e4e3"}.fa-panorama{--fa:"\e209"}.fa-comment-medical{--fa:"\f7f5"}.fa-teeth-open{--fa:"\f62f"}.fa-file-circle-minus{--fa:"\e4ed"}.fa-tags{--fa:"\f02c"}.fa-wine-glass{--fa:"\f4e3"}.fa-fast-forward,.fa-forward-fast{--fa:"\f050"}.fa-face-meh-blank,.fa-meh-blank{--fa:"\f5a4"}.fa-parking,.fa-square-parking{--fa:"\f540"}.fa-house-signal{--fa:"\e012"}.fa-bars-progress,.fa-tasks-alt{--fa:"\f828"}.fa-faucet-drip{--fa:"\e006"}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:"\f474"}.fa-ban-smoking,.fa-smoking-ban{--fa:"\f54d"}.fa-terminal{--fa:"\f120"}.fa-mobile-button{--fa:"\f10b"}.fa-house-medical-flag{--fa:"\e514"}.fa-basket-shopping,.fa-shopping-basket{--fa:"\f291"}.fa-tape{--fa:"\f4db"}.fa-bus-alt,.fa-bus-simple{--fa:"\f55e"}.fa-eye{--fa:"\f06e"}.fa-face-sad-cry,.fa-sad-cry{--fa:"\f5b3"}.fa-audio-description{--fa:"\f29e"}.fa-person-military-to-person{--fa:"\e54c"}.fa-file-shield{--fa:"\e4f0"}.fa-user-slash{--fa:"\f506"}.fa-pen{--fa:"\f304"}.fa-tower-observation{--fa:"\e586"}.fa-file-code{--fa:"\f1c9"}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:"\f012"}.fa-bus{--fa:"\f207"}.fa-heart-circle-xmark{--fa:"\e501"}.fa-home-lg,.fa-house-chimney{--fa:"\e3af"}.fa-window-maximize{--fa:"\f2d0"}.fa-face-frown,.fa-frown{--fa:"\f119"}.fa-prescription{--fa:"\f5b1"}.fa-shop,.fa-store-alt{--fa:"\f54f"}.fa-floppy-disk,.fa-save{--fa:"\f0c7"}.fa-vihara{--fa:"\f6a7"}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:"\f515"}.fa-sort-asc,.fa-sort-up{--fa:"\f0de"}.fa-comment-dots,.fa-commenting{--fa:"\f4ad"}.fa-plant-wilt{--fa:"\e5aa"}.fa-diamond{--fa:"\f219"}.fa-face-grin-squint,.fa-grin-squint{--fa:"\f585"}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:"\f4c0"}.fa-chart-diagram{--fa:"\e695"}.fa-bacterium{--fa:"\e05a"}.fa-hand-pointer{--fa:"\f25a"}.fa-drum-steelpan{--fa:"\f56a"}.fa-hand-scissors{--fa:"\f257"}.fa-hands-praying,.fa-praying-hands{--fa:"\f684"}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:"\f01e"}.fa-biohazard{--fa:"\f780"}.fa-location,.fa-location-crosshairs{--fa:"\f601"}.fa-mars-double{--fa:"\f227"}.fa-child-dress{--fa:"\e59c"}.fa-users-between-lines{--fa:"\e591"}.fa-lungs-virus{--fa:"\e067"}.fa-face-grin-tears,.fa-grin-tears{--fa:"\f588"}.fa-phone{--fa:"\f095"}.fa-calendar-times,.fa-calendar-xmark{--fa:"\f273"}.fa-child-reaching{--fa:"\e59d"}.fa-head-side-virus{--fa:"\e064"}.fa-user-cog,.fa-user-gear{--fa:"\f4fe"}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:"\f163"}.fa-door-closed{--fa:"\f52a"}.fa-shield-virus{--fa:"\e06c"}.fa-dice-six{--fa:"\f526"}.fa-mosquito-net{--fa:"\e52c"}.fa-file-fragment{--fa:"\e697"}.fa-bridge-water{--fa:"\e4ce"}.fa-person-booth{--fa:"\f756"}.fa-text-width{--fa:"\f035"}.fa-hat-wizard{--fa:"\f6e8"}.fa-pen-fancy{--fa:"\f5ac"}.fa-digging,.fa-person-digging{--fa:"\f85e"}.fa-trash{--fa:"\f1f8"}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:"\f629"}.fa-book-medical{--fa:"\f7e6"}.fa-poo{--fa:"\f2fe"}.fa-quote-right,.fa-quote-right-alt{--fa:"\f10e"}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:"\f553"}.fa-cubes{--fa:"\f1b3"}.fa-divide{--fa:"\f529"}.fa-tenge,.fa-tenge-sign{--fa:"\f7d7"}.fa-headphones{--fa:"\f025"}.fa-hands-holding{--fa:"\f4c2"}.fa-hands-clapping{--fa:"\e1a8"}.fa-republican{--fa:"\f75e"}.fa-arrow-left{--fa:"\f060"}.fa-person-circle-xmark{--fa:"\e543"}.fa-ruler{--fa:"\f545"}.fa-align-left{--fa:"\f036"}.fa-dice-d6{--fa:"\f6d1"}.fa-restroom{--fa:"\f7bd"}.fa-j{--fa:"\4a"}.fa-users-viewfinder{--fa:"\e595"}.fa-file-video{--fa:"\f1c8"}.fa-external-link-alt,.fa-up-right-from-square{--fa:"\f35d"}.fa-table-cells,.fa-th{--fa:"\f00a"}.fa-file-pdf{--fa:"\f1c1"}.fa-bible,.fa-book-bible{--fa:"\f647"}.fa-o{--fa:"\4f"}.fa-medkit,.fa-suitcase-medical{--fa:"\f0fa"}.fa-user-secret{--fa:"\f21b"}.fa-otter{--fa:"\f700"}.fa-female,.fa-person-dress{--fa:"\f182"}.fa-comment-dollar{--fa:"\f651"}.fa-briefcase-clock,.fa-business-time{--fa:"\f64a"}.fa-table-cells-large,.fa-th-large{--fa:"\f009"}.fa-book-tanakh,.fa-tanakh{--fa:"\f827"}.fa-phone-volume,.fa-volume-control-phone{--fa:"\f2a0"}.fa-hat-cowboy-side{--fa:"\f8c1"}.fa-clipboard-user{--fa:"\f7f3"}.fa-child{--fa:"\f1ae"}.fa-lira-sign{--fa:"\f195"}.fa-satellite{--fa:"\f7bf"}.fa-plane-lock{--fa:"\e558"}.fa-tag{--fa:"\f02b"}.fa-comment{--fa:"\f075"}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:"\f1fd"}.fa-envelope{--fa:"\f0e0"}.fa-angle-double-up,.fa-angles-up{--fa:"\f102"}.fa-paperclip{--fa:"\f0c6"}.fa-arrow-right-to-city{--fa:"\e4b3"}.fa-ribbon{--fa:"\f4d6"}.fa-lungs{--fa:"\f604"}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:"\f887"}.fa-litecoin-sign{--fa:"\e1d3"}.fa-border-none{--fa:"\f850"}.fa-circle-nodes{--fa:"\e4e2"}.fa-parachute-box{--fa:"\f4cd"}.fa-indent{--fa:"\f03c"}.fa-truck-field-un{--fa:"\e58e"}.fa-hourglass,.fa-hourglass-empty{--fa:"\f254"}.fa-mountain{--fa:"\f6fc"}.fa-user-doctor,.fa-user-md{--fa:"\f0f0"}.fa-circle-info,.fa-info-circle{--fa:"\f05a"}.fa-cloud-meatball{--fa:"\f73b"}.fa-camera,.fa-camera-alt{--fa:"\f030"}.fa-square-virus{--fa:"\e578"}.fa-meteor{--fa:"\f753"}.fa-car-on{--fa:"\e4dd"}.fa-sleigh{--fa:"\f7cc"}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:"\f162"}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:"\f4c1"}.fa-water{--fa:"\f773"}.fa-calendar-check{--fa:"\f274"}.fa-braille{--fa:"\f2a1"}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:"\f486"}.fa-landmark{--fa:"\f66f"}.fa-truck{--fa:"\f0d1"}.fa-crosshairs{--fa:"\f05b"}.fa-person-cane{--fa:"\e53c"}.fa-tent{--fa:"\e57d"}.fa-vest-patches{--fa:"\e086"}.fa-check-double{--fa:"\f560"}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:"\f15d"}.fa-money-bill-wheat{--fa:"\e52a"}.fa-cookie{--fa:"\f563"}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:"\f0e2"}.fa-hard-drive,.fa-hdd{--fa:"\f0a0"}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:"\f586"}.fa-dumbbell{--fa:"\f44b"}.fa-list-alt,.fa-rectangle-list{--fa:"\f022"}.fa-tarp-droplet{--fa:"\e57c"}.fa-house-medical-circle-check{--fa:"\e511"}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:"\f7ca"}.fa-calendar-plus{--fa:"\f271"}.fa-plane-arrival{--fa:"\f5af"}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:"\f359"}.fa-subway,.fa-train-subway{--fa:"\f239"}.fa-chart-gantt{--fa:"\e0e4"}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:"\e1bc"}.fa-crop-alt,.fa-crop-simple{--fa:"\f565"}.fa-money-bill-1,.fa-money-bill-alt{--fa:"\f3d1"}.fa-left-long,.fa-long-arrow-alt-left{--fa:"\f30a"}.fa-dna{--fa:"\f471"}.fa-virus-slash{--fa:"\e075"}.fa-minus,.fa-subtract{--fa:"\f068"}.fa-chess{--fa:"\f439"}.fa-arrow-left-long,.fa-long-arrow-left{--fa:"\f177"}.fa-plug-circle-check{--fa:"\e55c"}.fa-street-view{--fa:"\f21d"}.fa-franc-sign{--fa:"\e18f"}.fa-volume-off{--fa:"\f026"}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:"\f2a3"}.fa-cog,.fa-gear{--fa:"\f013"}.fa-droplet-slash,.fa-tint-slash{--fa:"\f5c7"}.fa-mosque{--fa:"\f678"}.fa-mosquito{--fa:"\e52b"}.fa-star-of-david{--fa:"\f69a"}.fa-person-military-rifle{--fa:"\e54b"}.fa-cart-shopping,.fa-shopping-cart{--fa:"\f07a"}.fa-vials{--fa:"\f493"}.fa-plug-circle-plus{--fa:"\e55f"}.fa-place-of-worship{--fa:"\f67f"}.fa-grip-vertical{--fa:"\f58e"}.fa-hexagon-nodes{--fa:"\e699"}.fa-arrow-turn-up,.fa-level-up{--fa:"\f148"}.fa-u{--fa:"\55"}.fa-square-root-alt,.fa-square-root-variable{--fa:"\f698"}.fa-clock,.fa-clock-four{--fa:"\f017"}.fa-backward-step,.fa-step-backward{--fa:"\f048"}.fa-pallet{--fa:"\f482"}.fa-faucet{--fa:"\e005"}.fa-baseball-bat-ball{--fa:"\f432"}.fa-s{--fa:"\53"}.fa-timeline{--fa:"\e29c"}.fa-keyboard{--fa:"\f11c"}.fa-caret-down{--fa:"\f0d7"}.fa-clinic-medical,.fa-house-chimney-medical{--fa:"\f7f2"}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:"\f2c8"}.fa-mobile-android-alt,.fa-mobile-screen{--fa:"\f3cf"}.fa-plane-up{--fa:"\e22d"}.fa-piggy-bank{--fa:"\f4d3"}.fa-battery-3,.fa-battery-half{--fa:"\f242"}.fa-mountain-city{--fa:"\e52e"}.fa-coins{--fa:"\f51e"}.fa-khanda{--fa:"\f66d"}.fa-sliders,.fa-sliders-h{--fa:"\f1de"}.fa-folder-tree{--fa:"\f802"}.fa-network-wired{--fa:"\f6ff"}.fa-map-pin{--fa:"\f276"}.fa-hamsa{--fa:"\f665"}.fa-cent-sign{--fa:"\e3f5"}.fa-flask{--fa:"\f0c3"}.fa-person-pregnant{--fa:"\e31e"}.fa-wand-sparkles{--fa:"\f72b"}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:"\f142"}.fa-ticket{--fa:"\f145"}.fa-power-off{--fa:"\f011"}.fa-long-arrow-alt-right,.fa-right-long{--fa:"\f30b"}.fa-flag-usa{--fa:"\f74d"}.fa-laptop-file{--fa:"\e51d"}.fa-teletype,.fa-tty{--fa:"\f1e4"}.fa-diagram-next{--fa:"\e476"}.fa-person-rifle{--fa:"\e54e"}.fa-house-medical-circle-exclamation{--fa:"\e512"}.fa-closed-captioning{--fa:"\f20a"}.fa-hiking,.fa-person-hiking{--fa:"\f6ec"}.fa-venus-double{--fa:"\f226"}.fa-images{--fa:"\f302"}.fa-calculator{--fa:"\f1ec"}.fa-people-pulling{--fa:"\e535"}.fa-n{--fa:"\4e"}.fa-cable-car,.fa-tram{--fa:"\f7da"}.fa-cloud-rain{--fa:"\f73d"}.fa-building-circle-xmark{--fa:"\e4d4"}.fa-ship{--fa:"\f21a"}.fa-arrows-down-to-line{--fa:"\e4b8"}.fa-download{--fa:"\f019"}.fa-face-grin,.fa-grin{--fa:"\f580"}.fa-backspace,.fa-delete-left{--fa:"\f55a"}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:"\f1fb"}.fa-file-circle-check{--fa:"\e5a0"}.fa-forward{--fa:"\f04e"}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:"\f3ce"}.fa-face-meh,.fa-meh{--fa:"\f11a"}.fa-align-center{--fa:"\f037"}.fa-book-dead,.fa-book-skull{--fa:"\f6b7"}.fa-drivers-license,.fa-id-card{--fa:"\f2c2"}.fa-dedent,.fa-outdent{--fa:"\f03b"}.fa-heart-circle-exclamation{--fa:"\e4fe"}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:"\f015"}.fa-calendar-week{--fa:"\f784"}.fa-laptop-medical{--fa:"\f812"}.fa-b{--fa:"\42"}.fa-file-medical{--fa:"\f477"}.fa-dice-one{--fa:"\f525"}.fa-kiwi-bird{--fa:"\f535"}.fa-arrow-right-arrow-left,.fa-exchange{--fa:"\f0ec"}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:"\f2f9"}.fa-cutlery,.fa-utensils{--fa:"\f2e7"}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:"\f161"}.fa-mill-sign{--fa:"\e1ed"}.fa-bowl-rice{--fa:"\e2eb"}.fa-skull{--fa:"\f54c"}.fa-broadcast-tower,.fa-tower-broadcast{--fa:"\f519"}.fa-truck-pickup{--fa:"\f63c"}.fa-long-arrow-alt-up,.fa-up-long{--fa:"\f30c"}.fa-stop{--fa:"\f04d"}.fa-code-merge{--fa:"\f387"}.fa-upload{--fa:"\f093"}.fa-hurricane{--fa:"\f751"}.fa-mound{--fa:"\e52d"}.fa-toilet-portable{--fa:"\e583"}.fa-compact-disc{--fa:"\f51f"}.fa-file-arrow-down,.fa-file-download{--fa:"\f56d"}.fa-caravan{--fa:"\f8ff"}.fa-shield-cat{--fa:"\e572"}.fa-bolt,.fa-zap{--fa:"\f0e7"}.fa-glass-water{--fa:"\e4f4"}.fa-oil-well{--fa:"\e532"}.fa-vault{--fa:"\e2c5"}.fa-mars{--fa:"\f222"}.fa-toilet{--fa:"\f7d8"}.fa-plane-circle-xmark{--fa:"\e557"}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:"\f157"}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:"\f158"}.fa-sun{--fa:"\f185"}.fa-guitar{--fa:"\f7a6"}.fa-face-laugh-wink,.fa-laugh-wink{--fa:"\f59c"}.fa-horse-head{--fa:"\f7ab"}.fa-bore-hole{--fa:"\e4c3"}.fa-industry{--fa:"\f275"}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:"\f358"}.fa-arrows-turn-to-dots{--fa:"\e4c1"}.fa-florin-sign{--fa:"\e184"}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:"\f884"}.fa-less-than{--fa:"\3c"}.fa-angle-down{--fa:"\f107"}.fa-car-tunnel{--fa:"\e4de"}.fa-head-side-cough{--fa:"\e061"}.fa-grip-lines{--fa:"\f7a4"}.fa-thumbs-down{--fa:"\f165"}.fa-user-lock{--fa:"\f502"}.fa-arrow-right-long,.fa-long-arrow-right{--fa:"\f178"}.fa-anchor-circle-xmark{--fa:"\e4ac"}.fa-ellipsis,.fa-ellipsis-h{--fa:"\f141"}.fa-chess-pawn{--fa:"\f443"}.fa-first-aid,.fa-kit-medical{--fa:"\f479"}.fa-person-through-window{--fa:"\e5a9"}.fa-toolbox{--fa:"\f552"}.fa-hands-holding-circle{--fa:"\e4fb"}.fa-bug{--fa:"\f188"}.fa-credit-card,.fa-credit-card-alt{--fa:"\f09d"}.fa-automobile,.fa-car{--fa:"\f1b9"}.fa-hand-holding-hand{--fa:"\e4f7"}.fa-book-open-reader,.fa-book-reader{--fa:"\f5da"}.fa-mountain-sun{--fa:"\e52f"}.fa-arrows-left-right-to-line{--fa:"\e4ba"}.fa-dice-d20{--fa:"\f6cf"}.fa-truck-droplet{--fa:"\e58c"}.fa-file-circle-xmark{--fa:"\e5a1"}.fa-temperature-arrow-up,.fa-temperature-up{--fa:"\e040"}.fa-medal{--fa:"\f5a2"}.fa-bed{--fa:"\f236"}.fa-h-square,.fa-square-h{--fa:"\f0fd"}.fa-podcast{--fa:"\f2ce"}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:"\f2c7"}.fa-bell{--fa:"\f0f3"}.fa-superscript{--fa:"\f12b"}.fa-plug-circle-xmark{--fa:"\e560"}.fa-star-of-life{--fa:"\f621"}.fa-phone-slash{--fa:"\f3dd"}.fa-paint-roller{--fa:"\f5aa"}.fa-hands-helping,.fa-handshake-angle{--fa:"\f4c4"}.fa-location-dot,.fa-map-marker-alt{--fa:"\f3c5"}.fa-file{--fa:"\f15b"}.fa-greater-than{--fa:"\3e"}.fa-person-swimming,.fa-swimmer{--fa:"\f5c4"}.fa-arrow-down{--fa:"\f063"}.fa-droplet,.fa-tint{--fa:"\f043"}.fa-eraser{--fa:"\f12d"}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:"\f57d"}.fa-person-burst{--fa:"\e53b"}.fa-dove{--fa:"\f4ba"}.fa-battery-0,.fa-battery-empty{--fa:"\f244"}.fa-socks{--fa:"\f696"}.fa-inbox{--fa:"\f01c"}.fa-section{--fa:"\e447"}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:"\f625"}.fa-envelope-open-text{--fa:"\f658"}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:"\f0f8"}.fa-wine-bottle{--fa:"\f72f"}.fa-chess-rook{--fa:"\f447"}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:"\f550"}.fa-dharmachakra{--fa:"\f655"}.fa-hotdog{--fa:"\f80f"}.fa-blind,.fa-person-walking-with-cane{--fa:"\f29d"}.fa-drum{--fa:"\f569"}.fa-ice-cream{--fa:"\f810"}.fa-heart-circle-bolt{--fa:"\e4fc"}.fa-fax{--fa:"\f1ac"}.fa-paragraph{--fa:"\f1dd"}.fa-check-to-slot,.fa-vote-yea{--fa:"\f772"}.fa-star-half{--fa:"\f089"}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:"\f468"}.fa-chain,.fa-link{--fa:"\f0c1"}.fa-assistive-listening-systems,.fa-ear-listen{--fa:"\f2a2"}.fa-tree-city{--fa:"\e587"}.fa-play{--fa:"\f04b"}.fa-font{--fa:"\f031"}.fa-table-cells-row-lock{--fa:"\e67a"}.fa-rupiah-sign{--fa:"\e23d"}.fa-magnifying-glass,.fa-search{--fa:"\f002"}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:"\f45d"}.fa-diagnoses,.fa-person-dots-from-line{--fa:"\f470"}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:"\f82a"}.fa-naira-sign{--fa:"\e1f6"}.fa-cart-arrow-down{--fa:"\f218"}.fa-walkie-talkie{--fa:"\f8ef"}.fa-file-edit,.fa-file-pen{--fa:"\f31c"}.fa-receipt{--fa:"\f543"}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:"\f14b"}.fa-suitcase-rolling{--fa:"\f5c1"}.fa-person-circle-exclamation{--fa:"\e53f"}.fa-chevron-down{--fa:"\f078"}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:"\f240"}.fa-skull-crossbones{--fa:"\f714"}.fa-code-compare{--fa:"\e13a"}.fa-list-dots,.fa-list-ul{--fa:"\f0ca"}.fa-school-lock{--fa:"\e56f"}.fa-tower-cell{--fa:"\e585"}.fa-down-long,.fa-long-arrow-alt-down{--fa:"\f309"}.fa-ranking-star{--fa:"\e561"}.fa-chess-king{--fa:"\f43f"}.fa-person-harassing{--fa:"\e549"}.fa-brazilian-real-sign{--fa:"\e46c"}.fa-landmark-alt,.fa-landmark-dome{--fa:"\f752"}.fa-arrow-up{--fa:"\f062"}.fa-television,.fa-tv,.fa-tv-alt{--fa:"\f26c"}.fa-shrimp{--fa:"\e448"}.fa-list-check,.fa-tasks{--fa:"\f0ae"}.fa-jug-detergent{--fa:"\e519"}.fa-circle-user,.fa-user-circle{--fa:"\f2bd"}.fa-user-shield{--fa:"\f505"}.fa-wind{--fa:"\f72e"}.fa-car-burst,.fa-car-crash{--fa:"\f5e1"}.fa-y{--fa:"\59"}.fa-person-snowboarding,.fa-snowboarding{--fa:"\f7ce"}.fa-shipping-fast,.fa-truck-fast{--fa:"\f48b"}.fa-fish{--fa:"\f578"}.fa-user-graduate{--fa:"\f501"}.fa-adjust,.fa-circle-half-stroke{--fa:"\f042"}.fa-clapperboard{--fa:"\e131"}.fa-circle-radiation,.fa-radiation-alt{--fa:"\f7ba"}.fa-baseball,.fa-baseball-ball{--fa:"\f433"}.fa-jet-fighter-up{--fa:"\e518"}.fa-diagram-project,.fa-project-diagram{--fa:"\f542"}.fa-copy{--fa:"\f0c5"}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:"\f6a9"}.fa-hand-sparkles{--fa:"\e05d"}.fa-grip,.fa-grip-horizontal{--fa:"\f58d"}.fa-share-from-square,.fa-share-square{--fa:"\f14d"}.fa-child-combatant,.fa-child-rifle{--fa:"\e4e0"}.fa-gun{--fa:"\e19b"}.fa-phone-square,.fa-square-phone{--fa:"\f098"}.fa-add,.fa-plus{--fa:"\2b"}.fa-expand{--fa:"\f065"}.fa-computer{--fa:"\e4e5"}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:"\f00d"}.fa-arrows,.fa-arrows-up-down-left-right{--fa:"\f047"}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:"\f51c"}.fa-peso-sign{--fa:"\e222"}.fa-building-shield{--fa:"\e4d8"}.fa-baby{--fa:"\f77c"}.fa-users-line{--fa:"\e592"}.fa-quote-left,.fa-quote-left-alt{--fa:"\f10d"}.fa-tractor{--fa:"\f722"}.fa-trash-arrow-up,.fa-trash-restore{--fa:"\f829"}.fa-arrow-down-up-lock{--fa:"\e4b0"}.fa-lines-leaning{--fa:"\e51e"}.fa-ruler-combined{--fa:"\f546"}.fa-copyright{--fa:"\f1f9"}.fa-equals{--fa:"\3d"}.fa-blender{--fa:"\f517"}.fa-teeth{--fa:"\f62e"}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:"\f20b"}.fa-map{--fa:"\f279"}.fa-rocket{--fa:"\f135"}.fa-photo-film,.fa-photo-video{--fa:"\f87c"}.fa-folder-minus{--fa:"\f65d"}.fa-hexagon-nodes-bolt{--fa:"\e69a"}.fa-store{--fa:"\f54e"}.fa-arrow-trend-up{--fa:"\e098"}.fa-plug-circle-minus{--fa:"\e55e"}.fa-sign,.fa-sign-hanging{--fa:"\f4d9"}.fa-bezier-curve{--fa:"\f55b"}.fa-bell-slash{--fa:"\f1f6"}.fa-tablet,.fa-tablet-android{--fa:"\f3fb"}.fa-school-flag{--fa:"\e56e"}.fa-fill{--fa:"\f575"}.fa-angle-up{--fa:"\f106"}.fa-drumstick-bite{--fa:"\f6d7"}.fa-holly-berry{--fa:"\f7aa"}.fa-chevron-left{--fa:"\f053"}.fa-bacteria{--fa:"\e059"}.fa-hand-lizard{--fa:"\f258"}.fa-notdef{--fa:"\e1fe"}.fa-disease{--fa:"\f7fa"}.fa-briefcase-medical{--fa:"\f469"}.fa-genderless{--fa:"\f22d"}.fa-chevron-right{--fa:"\f054"}.fa-retweet{--fa:"\f079"}.fa-car-alt,.fa-car-rear{--fa:"\f5de"}.fa-pump-soap{--fa:"\e06b"}.fa-video-slash{--fa:"\f4e2"}.fa-battery-2,.fa-battery-quarter{--fa:"\f243"}.fa-radio{--fa:"\f8d7"}.fa-baby-carriage,.fa-carriage-baby{--fa:"\f77d"}.fa-traffic-light{--fa:"\f637"}.fa-thermometer{--fa:"\f491"}.fa-vr-cardboard{--fa:"\f729"}.fa-hand-middle-finger{--fa:"\f806"}.fa-percent,.fa-percentage{--fa:"\25"}.fa-truck-moving{--fa:"\f4df"}.fa-glass-water-droplet{--fa:"\e4f5"}.fa-display{--fa:"\e163"}.fa-face-smile,.fa-smile{--fa:"\f118"}.fa-thumb-tack,.fa-thumbtack{--fa:"\f08d"}.fa-trophy{--fa:"\f091"}.fa-person-praying,.fa-pray{--fa:"\f683"}.fa-hammer{--fa:"\f6e3"}.fa-hand-peace{--fa:"\f25b"}.fa-rotate,.fa-sync-alt{--fa:"\f2f1"}.fa-spinner{--fa:"\f110"}.fa-robot{--fa:"\f544"}.fa-peace{--fa:"\f67c"}.fa-cogs,.fa-gears{--fa:"\f085"}.fa-warehouse{--fa:"\f494"}.fa-arrow-up-right-dots{--fa:"\e4b7"}.fa-splotch{--fa:"\f5bc"}.fa-face-grin-hearts,.fa-grin-hearts{--fa:"\f584"}.fa-dice-four{--fa:"\f524"}.fa-sim-card{--fa:"\f7c4"}.fa-transgender,.fa-transgender-alt{--fa:"\f225"}.fa-mercury{--fa:"\f223"}.fa-arrow-turn-down,.fa-level-down{--fa:"\f149"}.fa-person-falling-burst{--fa:"\e547"}.fa-award{--fa:"\f559"}.fa-ticket-alt,.fa-ticket-simple{--fa:"\f3ff"}.fa-building{--fa:"\f1ad"}.fa-angle-double-left,.fa-angles-left{--fa:"\f100"}.fa-qrcode{--fa:"\f029"}.fa-clock-rotate-left,.fa-history{--fa:"\f1da"}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:"\f583"}.fa-arrow-right-from-file,.fa-file-export{--fa:"\f56e"}.fa-shield,.fa-shield-blank{--fa:"\f132"}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:"\f885"}.fa-comment-nodes{--fa:"\e696"}.fa-house-medical{--fa:"\e3b2"}.fa-golf-ball,.fa-golf-ball-tee{--fa:"\f450"}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:"\f137"}.fa-house-chimney-window{--fa:"\e00d"}.fa-pen-nib{--fa:"\f5ad"}.fa-tent-arrow-turn-left{--fa:"\e580"}.fa-tents{--fa:"\e582"}.fa-magic,.fa-wand-magic{--fa:"\f0d0"}.fa-dog{--fa:"\f6d3"}.fa-carrot{--fa:"\f787"}.fa-moon{--fa:"\f186"}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:"\f5ce"}.fa-cheese{--fa:"\f7ef"}.fa-yin-yang{--fa:"\f6ad"}.fa-music{--fa:"\f001"}.fa-code-commit{--fa:"\f386"}.fa-temperature-low{--fa:"\f76b"}.fa-biking,.fa-person-biking{--fa:"\f84a"}.fa-broom{--fa:"\f51a"}.fa-shield-heart{--fa:"\e574"}.fa-gopuram{--fa:"\f664"}.fa-earth-oceania,.fa-globe-oceania{--fa:"\e47b"}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:"\f2d3"}.fa-hashtag{--fa:"\23"}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:"\f424"}.fa-oil-can{--fa:"\f613"}.fa-t{--fa:"\54"}.fa-hippo{--fa:"\f6ed"}.fa-chart-column{--fa:"\e0e3"}.fa-infinity{--fa:"\f534"}.fa-vial-circle-check{--fa:"\e596"}.fa-person-arrow-down-to-line{--fa:"\e538"}.fa-voicemail{--fa:"\f897"}.fa-fan{--fa:"\f863"}.fa-person-walking-luggage{--fa:"\e554"}.fa-arrows-alt-v,.fa-up-down{--fa:"\f338"}.fa-cloud-moon-rain{--fa:"\f73c"}.fa-calendar{--fa:"\f133"}.fa-trailer{--fa:"\e041"}.fa-bahai,.fa-haykal{--fa:"\f666"}.fa-sd-card{--fa:"\f7c2"}.fa-dragon{--fa:"\f6d5"}.fa-shoe-prints{--fa:"\f54b"}.fa-circle-plus,.fa-plus-circle{--fa:"\f055"}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:"\f58b"}.fa-hand-holding{--fa:"\f4bd"}.fa-plug-circle-exclamation{--fa:"\e55d"}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:"\f127"}.fa-clone{--fa:"\f24d"}.fa-person-walking-arrow-loop-left{--fa:"\e551"}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:"\f882"}.fa-fire-alt,.fa-fire-flame-curved{--fa:"\f7e4"}.fa-tornado{--fa:"\f76f"}.fa-file-circle-plus{--fa:"\e494"}.fa-book-quran,.fa-quran{--fa:"\f687"}.fa-anchor{--fa:"\f13d"}.fa-border-all{--fa:"\f84c"}.fa-angry,.fa-face-angry{--fa:"\f556"}.fa-cookie-bite{--fa:"\f564"}.fa-arrow-trend-down{--fa:"\e097"}.fa-feed,.fa-rss{--fa:"\f09e"}.fa-draw-polygon{--fa:"\f5ee"}.fa-balance-scale,.fa-scale-balanced{--fa:"\f24e"}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:"\f62a"}.fa-shower{--fa:"\f2cc"}.fa-desktop,.fa-desktop-alt{--fa:"\f390"}.fa-m{--fa:"\4d"}.fa-table-list,.fa-th-list{--fa:"\f00b"}.fa-comment-sms,.fa-sms{--fa:"\f7cd"}.fa-book{--fa:"\f02d"}.fa-user-plus{--fa:"\f234"}.fa-check{--fa:"\f00c"}.fa-battery-4,.fa-battery-three-quarters{--fa:"\f241"}.fa-house-circle-check{--fa:"\e509"}.fa-angle-left{--fa:"\f104"}.fa-diagram-successor{--fa:"\e47a"}.fa-truck-arrow-right{--fa:"\e58b"}.fa-arrows-split-up-and-left{--fa:"\e4bc"}.fa-fist-raised,.fa-hand-fist{--fa:"\f6de"}.fa-cloud-moon{--fa:"\f6c3"}.fa-briefcase{--fa:"\f0b1"}.fa-person-falling{--fa:"\e546"}.fa-image-portrait,.fa-portrait{--fa:"\f3e0"}.fa-user-tag{--fa:"\f507"}.fa-rug{--fa:"\e569"}.fa-earth-europe,.fa-globe-europe{--fa:"\f7a2"}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:"\f59d"}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:"\f410"}.fa-baht-sign{--fa:"\e0ac"}.fa-book-open{--fa:"\f518"}.fa-book-journal-whills,.fa-journal-whills{--fa:"\f66a"}.fa-handcuffs{--fa:"\e4f8"}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:"\f071"}.fa-database{--fa:"\f1c0"}.fa-mail-forward,.fa-share{--fa:"\f064"}.fa-bottle-droplet{--fa:"\e4c4"}.fa-mask-face{--fa:"\e1d7"}.fa-hill-rockslide{--fa:"\e508"}.fa-exchange-alt,.fa-right-left{--fa:"\f362"}.fa-paper-plane{--fa:"\f1d8"}.fa-road-circle-exclamation{--fa:"\e565"}.fa-dungeon{--fa:"\f6d9"}.fa-align-right{--fa:"\f038"}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:"\f53b"}.fa-life-ring{--fa:"\f1cd"}.fa-hands,.fa-sign-language,.fa-signing{--fa:"\f2a7"}.fa-calendar-day{--fa:"\f783"}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:"\f5c5"}.fa-arrows-up-down,.fa-arrows-v{--fa:"\f07d"}.fa-face-grimace,.fa-grimace{--fa:"\f57f"}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:"\e2ce"}.fa-level-down-alt,.fa-turn-down{--fa:"\f3be"}.fa-person-walking-arrow-right{--fa:"\e552"}.fa-envelope-square,.fa-square-envelope{--fa:"\f199"}.fa-dice{--fa:"\f522"}.fa-bowling-ball{--fa:"\f436"}.fa-brain{--fa:"\f5dc"}.fa-band-aid,.fa-bandage{--fa:"\f462"}.fa-calendar-minus{--fa:"\f272"}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:"\f057"}.fa-gifts{--fa:"\f79c"}.fa-hotel{--fa:"\f594"}.fa-earth-asia,.fa-globe-asia{--fa:"\f57e"}.fa-id-card-alt,.fa-id-card-clip{--fa:"\f47f"}.fa-magnifying-glass-plus,.fa-search-plus{--fa:"\f00e"}.fa-thumbs-up{--fa:"\f164"}.fa-user-clock{--fa:"\f4fd"}.fa-allergies,.fa-hand-dots{--fa:"\f461"}.fa-file-invoice{--fa:"\f570"}.fa-window-minimize{--fa:"\f2d1"}.fa-coffee,.fa-mug-saucer{--fa:"\f0f4"}.fa-brush{--fa:"\f55d"}.fa-file-half-dashed{--fa:"\e698"}.fa-mask{--fa:"\f6fa"}.fa-magnifying-glass-minus,.fa-search-minus{--fa:"\f010"}.fa-ruler-vertical{--fa:"\f548"}.fa-user-alt,.fa-user-large{--fa:"\f406"}.fa-train-tram{--fa:"\e5b4"}.fa-user-nurse{--fa:"\f82f"}.fa-syringe{--fa:"\f48e"}.fa-cloud-sun{--fa:"\f6c4"}.fa-stopwatch-20{--fa:"\e06f"}.fa-square-full{--fa:"\f45c"}.fa-magnet{--fa:"\f076"}.fa-jar{--fa:"\e516"}.fa-note-sticky,.fa-sticky-note{--fa:"\f249"}.fa-bug-slash{--fa:"\e490"}.fa-arrow-up-from-water-pump{--fa:"\e4b6"}.fa-bone{--fa:"\f5d7"}.fa-table-cells-row-unlock{--fa:"\e691"}.fa-user-injured{--fa:"\f728"}.fa-face-sad-tear,.fa-sad-tear{--fa:"\f5b4"}.fa-plane{--fa:"\f072"}.fa-tent-arrows-down{--fa:"\e581"}.fa-exclamation{--fa:"\21"}.fa-arrows-spin{--fa:"\e4bb"}.fa-print{--fa:"\f02f"}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:"\e2bb"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"\24"}.fa-x{--fa:"\58"}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:"\f688"}.fa-users-cog,.fa-users-gear{--fa:"\f509"}.fa-person-military-pointing{--fa:"\e54a"}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:"\f19c"}.fa-umbrella{--fa:"\f0e9"}.fa-trowel{--fa:"\e589"}.fa-d{--fa:"\44"}.fa-stapler{--fa:"\e5af"}.fa-masks-theater,.fa-theater-masks{--fa:"\f630"}.fa-kip-sign{--fa:"\e1c4"}.fa-hand-point-left{--fa:"\f0a5"}.fa-handshake-alt,.fa-handshake-simple{--fa:"\f4c6"}.fa-fighter-jet,.fa-jet-fighter{--fa:"\f0fb"}.fa-share-alt-square,.fa-square-share-nodes{--fa:"\f1e1"}.fa-barcode{--fa:"\f02a"}.fa-plus-minus{--fa:"\e43c"}.fa-video,.fa-video-camera{--fa:"\f03d"}.fa-graduation-cap,.fa-mortar-board{--fa:"\f19d"}.fa-hand-holding-medical{--fa:"\e05c"}.fa-person-circle-check{--fa:"\e53e"}.fa-level-up-alt,.fa-turn-up{--fa:"\f3bf"}
.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url("../webfonts/fa-brands-400.715d593456fa.woff2") format("woff2"),url("../webfonts/fa-brands-400.56c8d80832e3.ttf") format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero{--fa:"\f3d0"}.fa-hooli{--fa:"\f427"}.fa-yelp{--fa:"\f1e9"}.fa-cc-visa{--fa:"\f1f0"}.fa-lastfm{--fa:"\f202"}.fa-shopware{--fa:"\f5b5"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-aws{--fa:"\f375"}.fa-redhat{--fa:"\f7bc"}.fa-yoast{--fa:"\f2b1"}.fa-cloudflare{--fa:"\e07d"}.fa-ups{--fa:"\f7e0"}.fa-pixiv{--fa:"\e640"}.fa-wpexplorer{--fa:"\f2de"}.fa-dyalog{--fa:"\f399"}.fa-bity{--fa:"\f37a"}.fa-stackpath{--fa:"\f842"}.fa-buysellads{--fa:"\f20d"}.fa-first-order{--fa:"\f2b0"}.fa-modx{--fa:"\f285"}.fa-guilded{--fa:"\e07e"}.fa-vnv{--fa:"\f40b"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-microsoft{--fa:"\f3ca"}.fa-qq{--fa:"\f1d6"}.fa-orcid{--fa:"\f8d2"}.fa-java{--fa:"\f4e4"}.fa-invision{--fa:"\f7b0"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-centercode{--fa:"\f380"}.fa-glide-g{--fa:"\f2a6"}.fa-drupal{--fa:"\f1a9"}.fa-jxl{--fa:"\e67b"}.fa-dart-lang{--fa:"\e693"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-unity{--fa:"\e049"}.fa-whmcs{--fa:"\f40d"}.fa-rocketchat{--fa:"\f3e8"}.fa-vk{--fa:"\f189"}.fa-untappd{--fa:"\f405"}.fa-mailchimp{--fa:"\f59e"}.fa-css3-alt{--fa:"\f38b"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-vimeo-v{--fa:"\f27d"}.fa-contao{--fa:"\f26d"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-deskpro{--fa:"\f38f"}.fa-brave{--fa:"\e63c"}.fa-sistrix{--fa:"\f3ee"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-battle-net{--fa:"\f835"}.fa-the-red-yeti{--fa:"\f69d"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-edge{--fa:"\f282"}.fa-threads{--fa:"\e618"}.fa-napster{--fa:"\f3d2"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-google-plus-g{--fa:"\f0d5"}.fa-artstation{--fa:"\f77a"}.fa-markdown{--fa:"\f60f"}.fa-sourcetree{--fa:"\f7d3"}.fa-google-plus{--fa:"\f2b3"}.fa-diaspora{--fa:"\f791"}.fa-foursquare{--fa:"\f180"}.fa-stack-overflow{--fa:"\f16c"}.fa-github-alt{--fa:"\f113"}.fa-phoenix-squadron{--fa:"\f511"}.fa-pagelines{--fa:"\f18c"}.fa-algolia{--fa:"\f36c"}.fa-red-river{--fa:"\f3e3"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-safari{--fa:"\f267"}.fa-google{--fa:"\f1a0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-atlassian{--fa:"\f77b"}.fa-linkedin-in{--fa:"\f0e1"}.fa-digital-ocean{--fa:"\f391"}.fa-nimblr{--fa:"\f5a8"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-hacker-news{--fa:"\f1d4"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-adversal{--fa:"\f36a"}.fa-creative-commons{--fa:"\f25e"}.fa-watchman-monitoring{--fa:"\e087"}.fa-fonticons{--fa:"\f280"}.fa-weixin{--fa:"\f1d7"}.fa-shirtsinbulk{--fa:"\f214"}.fa-codepen{--fa:"\f1cb"}.fa-git-alt{--fa:"\f841"}.fa-lyft{--fa:"\f3c3"}.fa-rev{--fa:"\f5b2"}.fa-windows{--fa:"\f17a"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-meetup{--fa:"\f2e0"}.fa-centos{--fa:"\f789"}.fa-adn{--fa:"\f170"}.fa-cloudsmith{--fa:"\f384"}.fa-opensuse{--fa:"\e62b"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-codiepie{--fa:"\f284"}.fa-node{--fa:"\f419"}.fa-mix{--fa:"\f3cb"}.fa-steam{--fa:"\f1b6"}.fa-cc-apple-pay{--fa:"\f416"}.fa-scribd{--fa:"\f28a"}.fa-debian{--fa:"\e60b"}.fa-openid{--fa:"\f19b"}.fa-instalod{--fa:"\e081"}.fa-files-pinwheel{--fa:"\e69f"}.fa-expeditedssl{--fa:"\f23e"}.fa-sellcast{--fa:"\f2da"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-r-project{--fa:"\f4f7"}.fa-delicious{--fa:"\f1a5"}.fa-freebsd{--fa:"\f3a4"}.fa-vuejs{--fa:"\f41f"}.fa-accusoft{--fa:"\f369"}.fa-ioxhost{--fa:"\f208"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-app-store{--fa:"\f36f"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-itunes-note{--fa:"\f3b5"}.fa-golang{--fa:"\e40f"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-grav{--fa:"\f2d6"}.fa-weibo{--fa:"\f18a"}.fa-uncharted{--fa:"\e084"}.fa-firstdraft{--fa:"\f3a1"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-wikipedia-w{--fa:"\f266"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-angellist{--fa:"\f209"}.fa-galactic-republic{--fa:"\f50c"}.fa-nfc-directional{--fa:"\e530"}.fa-skype{--fa:"\f17e"}.fa-joget{--fa:"\f3b7"}.fa-fedora{--fa:"\f798"}.fa-stripe-s{--fa:"\f42a"}.fa-meta{--fa:"\e49b"}.fa-laravel{--fa:"\f3bd"}.fa-hotjar{--fa:"\f3b1"}.fa-bluetooth-b{--fa:"\f294"}.fa-square-letterboxd{--fa:"\e62e"}.fa-sticker-mule{--fa:"\f3f7"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-hips{--fa:"\f452"}.fa-css{--fa:"\e6a2"}.fa-behance{--fa:"\f1b4"}.fa-reddit{--fa:"\f1a1"}.fa-discord{--fa:"\f392"}.fa-chrome{--fa:"\f268"}.fa-app-store-ios{--fa:"\f370"}.fa-cc-discover{--fa:"\f1f2"}.fa-wpbeginner{--fa:"\f297"}.fa-confluence{--fa:"\f78d"}.fa-shoelace{--fa:"\e60c"}.fa-mdb{--fa:"\f8ca"}.fa-dochub{--fa:"\f394"}.fa-accessible-icon{--fa:"\f368"}.fa-ebay{--fa:"\f4f4"}.fa-amazon{--fa:"\f270"}.fa-unsplash{--fa:"\e07c"}.fa-yarn{--fa:"\f7e3"}.fa-square-steam,.fa-steam-square{--fa:"\f1b7"}.fa-500px{--fa:"\f26e"}.fa-square-vimeo,.fa-vimeo-square{--fa:"\f194"}.fa-asymmetrik{--fa:"\f372"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-gratipay{--fa:"\f184"}.fa-apple{--fa:"\f179"}.fa-hive{--fa:"\e07f"}.fa-gitkraken{--fa:"\f3a6"}.fa-keybase{--fa:"\f4f5"}.fa-apple-pay{--fa:"\f415"}.fa-padlet{--fa:"\e4a0"}.fa-amazon-pay{--fa:"\f42c"}.fa-github-square,.fa-square-github{--fa:"\f092"}.fa-stumbleupon{--fa:"\f1a4"}.fa-fedex{--fa:"\f797"}.fa-phoenix-framework{--fa:"\f3dc"}.fa-shopify{--fa:"\e057"}.fa-neos{--fa:"\f612"}.fa-square-threads{--fa:"\e619"}.fa-hackerrank{--fa:"\f5f7"}.fa-researchgate{--fa:"\f4f8"}.fa-swift{--fa:"\f8e1"}.fa-angular{--fa:"\f420"}.fa-speakap{--fa:"\f3f3"}.fa-angrycreative{--fa:"\f36e"}.fa-y-combinator{--fa:"\f23b"}.fa-empire{--fa:"\f1d1"}.fa-envira{--fa:"\f299"}.fa-google-scholar{--fa:"\e63b"}.fa-gitlab-square,.fa-square-gitlab{--fa:"\e5ae"}.fa-studiovinari{--fa:"\f3f8"}.fa-pied-piper{--fa:"\f2ae"}.fa-wordpress{--fa:"\f19a"}.fa-product-hunt{--fa:"\f288"}.fa-firefox{--fa:"\f269"}.fa-linode{--fa:"\f2b8"}.fa-goodreads{--fa:"\f3a8"}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:"\f264"}.fa-jsfiddle{--fa:"\f1cc"}.fa-sith{--fa:"\f512"}.fa-themeisle{--fa:"\f2b2"}.fa-page4{--fa:"\f3d7"}.fa-hashnode{--fa:"\e499"}.fa-react{--fa:"\f41b"}.fa-cc-paypal{--fa:"\f1f4"}.fa-squarespace{--fa:"\f5be"}.fa-cc-stripe{--fa:"\f1f5"}.fa-creative-commons-share{--fa:"\f4f2"}.fa-bitcoin{--fa:"\f379"}.fa-keycdn{--fa:"\f3ba"}.fa-opera{--fa:"\f26a"}.fa-itch-io{--fa:"\f83a"}.fa-umbraco{--fa:"\f8e8"}.fa-galactic-senate{--fa:"\f50d"}.fa-ubuntu{--fa:"\f7df"}.fa-draft2digital{--fa:"\f396"}.fa-stripe{--fa:"\f429"}.fa-houzz{--fa:"\f27c"}.fa-gg{--fa:"\f260"}.fa-dhl{--fa:"\f790"}.fa-pinterest-square,.fa-square-pinterest{--fa:"\f0d3"}.fa-xing{--fa:"\f168"}.fa-blackberry{--fa:"\f37b"}.fa-creative-commons-pd{--fa:"\f4ec"}.fa-playstation{--fa:"\f3df"}.fa-quinscape{--fa:"\f459"}.fa-less{--fa:"\f41d"}.fa-blogger-b{--fa:"\f37d"}.fa-opencart{--fa:"\f23d"}.fa-vine{--fa:"\f1ca"}.fa-signal-messenger{--fa:"\e663"}.fa-paypal{--fa:"\f1ed"}.fa-gitlab{--fa:"\f296"}.fa-typo3{--fa:"\f42b"}.fa-reddit-alien{--fa:"\f281"}.fa-yahoo{--fa:"\f19e"}.fa-dailymotion{--fa:"\e052"}.fa-affiliatetheme{--fa:"\f36b"}.fa-pied-piper-pp{--fa:"\f1a7"}.fa-bootstrap{--fa:"\f836"}.fa-odnoklassniki{--fa:"\f263"}.fa-nfc-symbol{--fa:"\e531"}.fa-mintbit{--fa:"\e62f"}.fa-ethereum{--fa:"\f42e"}.fa-speaker-deck{--fa:"\f83c"}.fa-creative-commons-nc-eu{--fa:"\f4e9"}.fa-patreon{--fa:"\f3d9"}.fa-avianex{--fa:"\f374"}.fa-ello{--fa:"\f5f1"}.fa-gofore{--fa:"\f3a7"}.fa-bimobject{--fa:"\f378"}.fa-brave-reverse{--fa:"\e63d"}.fa-facebook-f{--fa:"\f39e"}.fa-google-plus-square,.fa-square-google-plus{--fa:"\f0d4"}.fa-web-awesome{--fa:"\e682"}.fa-mandalorian{--fa:"\f50f"}.fa-first-order-alt{--fa:"\f50a"}.fa-osi{--fa:"\f41a"}.fa-google-wallet{--fa:"\f1ee"}.fa-d-and-d-beyond{--fa:"\f6ca"}.fa-periscope{--fa:"\f3da"}.fa-fulcrum{--fa:"\f50b"}.fa-cloudscale{--fa:"\f383"}.fa-forumbee{--fa:"\f211"}.fa-mizuni{--fa:"\f3cc"}.fa-schlix{--fa:"\f3ea"}.fa-square-xing,.fa-xing-square{--fa:"\f169"}.fa-bandcamp{--fa:"\f2d5"}.fa-wpforms{--fa:"\f298"}.fa-cloudversify{--fa:"\f385"}.fa-usps{--fa:"\f7e1"}.fa-megaport{--fa:"\f5a3"}.fa-magento{--fa:"\f3c4"}.fa-spotify{--fa:"\f1bc"}.fa-optin-monster{--fa:"\f23c"}.fa-fly{--fa:"\f417"}.fa-square-bluesky{--fa:"\e6a3"}.fa-aviato{--fa:"\f421"}.fa-itunes{--fa:"\f3b4"}.fa-cuttlefish{--fa:"\f38c"}.fa-blogger{--fa:"\f37c"}.fa-flickr{--fa:"\f16e"}.fa-viber{--fa:"\f409"}.fa-soundcloud{--fa:"\f1be"}.fa-digg{--fa:"\f1a6"}.fa-tencent-weibo{--fa:"\f1d5"}.fa-letterboxd{--fa:"\e62d"}.fa-symfony{--fa:"\f83d"}.fa-maxcdn{--fa:"\f136"}.fa-etsy{--fa:"\f2d7"}.fa-facebook-messenger{--fa:"\f39f"}.fa-audible{--fa:"\f373"}.fa-think-peaks{--fa:"\f731"}.fa-bilibili{--fa:"\e3d9"}.fa-erlang{--fa:"\f39d"}.fa-x-twitter{--fa:"\e61b"}.fa-cotton-bureau{--fa:"\f89e"}.fa-dashcube{--fa:"\f210"}.fa-42-group,.fa-innosoft{--fa:"\e080"}.fa-stack-exchange{--fa:"\f18d"}.fa-elementor{--fa:"\f430"}.fa-pied-piper-square,.fa-square-pied-piper{--fa:"\e01e"}.fa-creative-commons-nd{--fa:"\f4eb"}.fa-palfed{--fa:"\f3d8"}.fa-superpowers{--fa:"\f2dd"}.fa-resolving{--fa:"\f3e7"}.fa-xbox{--fa:"\f412"}.fa-square-web-awesome-stroke{--fa:"\e684"}.fa-searchengin{--fa:"\f3eb"}.fa-tiktok{--fa:"\e07b"}.fa-facebook-square,.fa-square-facebook{--fa:"\f082"}.fa-renren{--fa:"\f18b"}.fa-linux{--fa:"\f17c"}.fa-glide{--fa:"\f2a5"}.fa-linkedin{--fa:"\f08c"}.fa-hubspot{--fa:"\f3b2"}.fa-deploydog{--fa:"\f38e"}.fa-twitch{--fa:"\f1e8"}.fa-flutter{--fa:"\e694"}.fa-ravelry{--fa:"\f2d9"}.fa-mixer{--fa:"\e056"}.fa-lastfm-square,.fa-square-lastfm{--fa:"\f203"}.fa-vimeo{--fa:"\f40a"}.fa-mendeley{--fa:"\f7b3"}.fa-uniregistry{--fa:"\f404"}.fa-figma{--fa:"\f799"}.fa-creative-commons-remix{--fa:"\f4ee"}.fa-cc-amazon-pay{--fa:"\f42d"}.fa-dropbox{--fa:"\f16b"}.fa-instagram{--fa:"\f16d"}.fa-cmplid{--fa:"\e360"}.fa-upwork{--fa:"\e641"}.fa-facebook{--fa:"\f09a"}.fa-gripfire{--fa:"\f3ac"}.fa-jedi-order{--fa:"\f50e"}.fa-uikit{--fa:"\f403"}.fa-fort-awesome-alt{--fa:"\f3a3"}.fa-phabricator{--fa:"\f3db"}.fa-ussunnah{--fa:"\f407"}.fa-earlybirds{--fa:"\f39a"}.fa-trade-federation{--fa:"\f513"}.fa-autoprefixer{--fa:"\f41c"}.fa-whatsapp{--fa:"\f232"}.fa-square-upwork{--fa:"\e67c"}.fa-slideshare{--fa:"\f1e7"}.fa-google-play{--fa:"\f3ab"}.fa-viadeo{--fa:"\f2a9"}.fa-line{--fa:"\f3c0"}.fa-google-drive{--fa:"\f3aa"}.fa-servicestack{--fa:"\f3ec"}.fa-simplybuilt{--fa:"\f215"}.fa-bitbucket{--fa:"\f171"}.fa-imdb{--fa:"\f2d8"}.fa-deezer{--fa:"\e077"}.fa-raspberry-pi{--fa:"\f7bb"}.fa-jira{--fa:"\f7b1"}.fa-docker{--fa:"\f395"}.fa-screenpal{--fa:"\e570"}.fa-bluetooth{--fa:"\f293"}.fa-gitter{--fa:"\f426"}.fa-d-and-d{--fa:"\f38d"}.fa-microblog{--fa:"\e01a"}.fa-cc-diners-club{--fa:"\f24c"}.fa-gg-circle{--fa:"\f261"}.fa-pied-piper-hat{--fa:"\f4e5"}.fa-kickstarter-k{--fa:"\f3bc"}.fa-yandex{--fa:"\f413"}.fa-readme{--fa:"\f4d5"}.fa-html5{--fa:"\f13b"}.fa-sellsy{--fa:"\f213"}.fa-square-web-awesome{--fa:"\e683"}.fa-sass{--fa:"\f41e"}.fa-wirsindhandwerk,.fa-wsh{--fa:"\e2d0"}.fa-buromobelexperte{--fa:"\f37f"}.fa-salesforce{--fa:"\f83b"}.fa-octopus-deploy{--fa:"\e082"}.fa-medapps{--fa:"\f3c6"}.fa-ns8{--fa:"\f3d5"}.fa-pinterest-p{--fa:"\f231"}.fa-apper{--fa:"\f371"}.fa-fort-awesome{--fa:"\f286"}.fa-waze{--fa:"\f83f"}.fa-bluesky{--fa:"\e671"}.fa-cc-jcb{--fa:"\f24b"}.fa-snapchat,.fa-snapchat-ghost{--fa:"\f2ab"}.fa-fantasy-flight-games{--fa:"\f6dc"}.fa-rust{--fa:"\e07a"}.fa-wix{--fa:"\f5cf"}.fa-behance-square,.fa-square-behance{--fa:"\f1b5"}.fa-supple{--fa:"\f3f9"}.fa-webflow{--fa:"\e65c"}.fa-rebel{--fa:"\f1d0"}.fa-css3{--fa:"\f13c"}.fa-staylinked{--fa:"\f3f5"}.fa-kaggle{--fa:"\f5fa"}.fa-space-awesome{--fa:"\e5ac"}.fa-deviantart{--fa:"\f1bd"}.fa-cpanel{--fa:"\f388"}.fa-goodreads-g{--fa:"\f3a9"}.fa-git-square,.fa-square-git{--fa:"\f1d2"}.fa-square-tumblr,.fa-tumblr-square{--fa:"\f174"}.fa-trello{--fa:"\f181"}.fa-creative-commons-nc-jp{--fa:"\f4ea"}.fa-get-pocket{--fa:"\f265"}.fa-perbyte{--fa:"\e083"}.fa-grunt{--fa:"\f3ad"}.fa-weebly{--fa:"\f5cc"}.fa-connectdevelop{--fa:"\f20e"}.fa-leanpub{--fa:"\f212"}.fa-black-tie{--fa:"\f27e"}.fa-themeco{--fa:"\f5c6"}.fa-python{--fa:"\f3e2"}.fa-android{--fa:"\f17b"}.fa-bots{--fa:"\e340"}.fa-free-code-camp{--fa:"\f2c5"}.fa-hornbill{--fa:"\f592"}.fa-js{--fa:"\f3b8"}.fa-ideal{--fa:"\e013"}.fa-git{--fa:"\f1d3"}.fa-dev{--fa:"\f6cc"}.fa-sketch{--fa:"\f7c6"}.fa-yandex-international{--fa:"\f414"}.fa-cc-amex{--fa:"\f1f3"}.fa-uber{--fa:"\f402"}.fa-github{--fa:"\f09b"}.fa-php{--fa:"\f457"}.fa-alipay{--fa:"\f642"}.fa-youtube{--fa:"\f167"}.fa-skyatlas{--fa:"\f216"}.fa-firefox-browser{--fa:"\e007"}.fa-replyd{--fa:"\f3e6"}.fa-suse{--fa:"\f7d6"}.fa-jenkins{--fa:"\f3b6"}.fa-twitter{--fa:"\f099"}.fa-rockrms{--fa:"\f3e9"}.fa-pinterest{--fa:"\f0d2"}.fa-buffer{--fa:"\f837"}.fa-npm{--fa:"\f3d4"}.fa-yammer{--fa:"\f840"}.fa-btc{--fa:"\f15a"}.fa-dribbble{--fa:"\f17d"}.fa-stumbleupon-circle{--fa:"\f1a3"}.fa-internet-explorer{--fa:"\f26b"}.fa-stubber{--fa:"\e5c7"}.fa-telegram,.fa-telegram-plane{--fa:"\f2c6"}.fa-old-republic{--fa:"\f510"}.fa-odysee{--fa:"\e5c6"}.fa-square-whatsapp,.fa-whatsapp-square{--fa:"\f40c"}.fa-node-js{--fa:"\f3d3"}.fa-edge-legacy{--fa:"\e078"}.fa-slack,.fa-slack-hash{--fa:"\f198"}.fa-medrt{--fa:"\f3c8"}.fa-usb{--fa:"\f287"}.fa-tumblr{--fa:"\f173"}.fa-vaadin{--fa:"\f408"}.fa-quora{--fa:"\f2c4"}.fa-square-x-twitter{--fa:"\e61a"}.fa-reacteurope{--fa:"\f75d"}.fa-medium,.fa-medium-m{--fa:"\f23a"}.fa-amilia{--fa:"\f36d"}.fa-mixcloud{--fa:"\f289"}.fa-flipboard{--fa:"\f44d"}.fa-viacoin{--fa:"\f237"}.fa-critical-role{--fa:"\f6c9"}.fa-sitrox{--fa:"\e44a"}.fa-discourse{--fa:"\f393"}.fa-joomla{--fa:"\f1aa"}.fa-mastodon{--fa:"\f4f6"}.fa-airbnb{--fa:"\f834"}.fa-wolf-pack-battalion{--fa:"\f514"}.fa-buy-n-large{--fa:"\f8a6"}.fa-gulp{--fa:"\f3ae"}.fa-creative-commons-sampling-plus{--fa:"\f4f1"}.fa-strava{--fa:"\f428"}.fa-ember{--fa:"\f423"}.fa-canadian-maple-leaf{--fa:"\f785"}.fa-teamspeak{--fa:"\f4f9"}.fa-pushed{--fa:"\f3e1"}.fa-wordpress-simple{--fa:"\f411"}.fa-nutritionix{--fa:"\f3d6"}.fa-wodu{--fa:"\e088"}.fa-google-pay{--fa:"\e079"}.fa-intercom{--fa:"\f7af"}.fa-zhihu{--fa:"\f63f"}.fa-korvue{--fa:"\f42f"}.fa-pix{--fa:"\e43a"}.fa-steam-symbol{--fa:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url("../webfonts/fa-regular-400.2d89b49ac286.woff2") format("woff2"),url("../webfonts/fa-regular-400.370dd5af19f8.ttf") format("truetype")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url("../webfonts/fa-solid-900.237f4a0afbdb.woff2") format("woff2"),url("../webfonts/fa-solid-900.adec7d6f310b.ttf") format("truetype")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url("../webfonts/fa-brands-400.715d593456fa.woff2") format("woff2"),url("../webfonts/fa-brands-400.56c8d80832e3.ttf") format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url("../webfonts/fa-solid-900.237f4a0afbdb.woff2") format("woff2"),url("../webfonts/fa-solid-900.adec7d6f310b.ttf") format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url("../webfonts/fa-regular-400.2d89b49ac286.woff2") format("woff2"),url("../webfonts/fa-regular-400.370dd5af19f8.ttf") format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url("../webfonts/fa-solid-900.237f4a0afbdb.woff2") format("woff2"),url("../webfonts/fa-solid-900.adec7d6f310b.ttf") format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url("../webfonts/fa-brands-400.715d593456fa.woff2") format("woff2"),url("../webfonts/fa-brands-400.56c8d80832e3.ttf") format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url("../webfonts/fa-regular-400.2d89b49ac286.woff2") format("woff2"),url("../webfonts/fa-regular-400.370dd5af19f8.ttf") format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url("../webfonts/fa-v4compatibility.7c428138d15b.woff2") format("woff2"),url("../webfonts/fa-v4compatibility.38fec6307db2.ttf") format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}

     .container.svelte-18e0vbd {
         display: flex;
         flex-direction: column;
         align-items: center;
         width:100%;

     }


     .top-bar.svelte-18e0vbd {
         width: 100%;
         text-align: center;
         border-bottom: 2px solid #ccc;
         display: flex;
         flex-direction: row;
         justify-content: space-between;
         align-items: center;
         }



     .content.svelte-18e0vbd {
       margin-top: 50px; /* Ensures the content is not under the top bar */
       color: #000;
       display:flex;
       justify-content: space-around;

     }

     .illustration.svelte-18e0vbd {
       margin-top: 20px;
     }
     .filler.svelte-18e0vbd{
         width:60px;
     }
     .label.svelte-18e0vbd{
         font-size:23px;
     }
     .illustration.svelte-18e0vbd img:where(.svelte-18e0vbd) {
       width: 100%;
       height: auto;
       max-height:500px;
     }
     .exit-button.svelte-18e0vbd{
         display:flex;
         justify-content: flex-end;
     }
     .exit-button.svelte-18e0vbd img:where(.svelte-18e0vbd){
         width:80%;
         max-width:60px;
     }


    .red-border.svelte-1yjhrmi {
        border-left: 4px solid #dc2626;
        background-color: #fef2f2;
    }

    .responsibility-incident.svelte-1yjhrmi {
        background-color: #ffcccc;
    }

    .yellow-border.svelte-1yjhrmi {
        border-left: 4px solid #f59e0b;
        background-color: #fffbeb;
    }

    .green-border.svelte-1yjhrmi {
        border-left: 4px solid #059669;
        background-color: #f0fdf4;
    }

    .grey-border.svelte-1yjhrmi {
        border-left: 4px solid #6b7280;
        background-color: #f9fafb;
    }

    .header.svelte-1yjhrmi {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 0 0 8px 0;
        font-size: 1rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        margin-bottom: 12px;
        border-bottom: 1px solid #e5e7eb;
    }

    .red-header.svelte-1yjhrmi {
        color: #dc2626;
    }

    .yellow-header.svelte-1yjhrmi {
        color: #f59e0b;
    }

    .green-header.svelte-1yjhrmi {
        color: #059669;
    }

    .grey-header.svelte-1yjhrmi {
        color: #6b7280;
    }

    /* Button styling */
    button.svelte-1yjhrmi {
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 10px 16px;
        width: 100%;
        height: 44px;
        background-color: #ffffff;
        border: 1px solid #d1d5db;
        border-radius: 6px;
        font-size: 0.875rem;
        font-weight: 500;
        color: #374151;
        cursor: pointer;
        transition: all 0.2s ease;
        outline: none;
    }

    button.svelte-1yjhrmi:hover {
        background-color: #f3f4f6;
        border-color: #9ca3af;
    }

    button.svelte-1yjhrmi:focus {
        box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.5);
    }

    .confirm-button.svelte-1yjhrmi {
        background-color: #059669;
        border-color: #059669;
        color: white;
        margin-bottom: 8px;
    }

    .confirm-button.svelte-1yjhrmi:hover {
        background-color: #047857;
        border-color: #047857;
    }

    .deny-button.svelte-1yjhrmi {
        background-color: #dc2626;
        border-color: #dc2626;
        color: white;
    }

    .deny-button.svelte-1yjhrmi:hover {
        background-color: #b91c1c;
        border-color: #b91c1c;
    }

    .classcontainer.svelte-1yjhrmi {
        padding: 20px;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        margin-bottom: 16px;
        gap: 16px;
        box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
        border-radius: 8px;
        border: 1px solid #e5e7eb;
        color: #374151;
    }

    .time-section.svelte-1yjhrmi {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 12px 0;
    }

    .time-item.svelte-1yjhrmi {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .time-label.svelte-1yjhrmi {
        font-size: 0.875rem;
        font-weight: 500;
        color: #6b7280;
    }

    .senasLaikas.svelte-1yjhrmi .time-label:where(.svelte-1yjhrmi) {
        color: #dc2626;
    }

    .naujasLaikas.svelte-1yjhrmi .time-label:where(.svelte-1yjhrmi) {
        color: #059669;
    }

    .addi_text.svelte-1yjhrmi {
        font-size: 0.875rem;
        color: #6b7280;
        font-style: italic;
        padding: 12px;
        background-color: #f9fafb;
        border-radius: 6px;
        border-left: 3px solid #d1d5db;
    }

    .no-events-message.svelte-1yjhrmi {
        text-align: center;
        color: #6b7280;
        font-size: 1rem;
        padding: 40px 20px;
    }

    .button-group.svelte-1yjhrmi {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 8px;
    }


    .timeslot.svelte-1w3j5cb {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width:100%;
    }

    .timeslot.svelte-1w3j5cb button:where(.svelte-1w3j5cb) {
      border: 1px solid #c0c0c0;
      background-color: #d3e3d3;
      padding: 8px;
      border-radius: 4px;
      cursor: pointer;
      transition: background-color 0.3s ease;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .timeslot.svelte-1w3j5cb button:where(.svelte-1w3j5cb):hover {
      background-color: #a8c1a8;
    }

    .minus-icon.svelte-1w3j5cb {
      width: 16px;
      height: 16px;
      fill: #555;
    }


    .form-container.svelte-xe65md {

        width:100%;
    }

    .form-group.svelte-xe65md {
      margin-bottom: 16px;
      display:flex;
      flex-direction: column;
      width:40%;
      min-width: 120px;
      flex: 1;
    }
    .form-group2.svelte-xe65md{
      margin-bottom: 16px;
      display:flex;
      flex-direction: column;

    }

    button.svelte-xe65md {
      background-color: #fab45a;
      color: #000;
      padding: 12px;
      border: none;
      border-radius: 4px;
      cursor: pointer;
    }

    button.svelte-xe65md:hover {
      background-color: #927043;
    }
    input.svelte-xe65md{

        border-radius: 6px;
        border: 1px solid #14695b;
    }
    select.svelte-xe65md {
      width: 100%;
      padding: 8px;
      border-radius: 6px;
      border: 1px solid #14695b;
    }
    .time-container.svelte-xe65md{
        display:flex;
        flex-direction:row;
        justify-content:space-between;
        gap: 10px;
        flex-wrap: wrap;
    }
    span.svelte-xe65md{
        margin-bottom:5px;
        font-weight: bold;
    }
    button.svelte-xe65md span:where(.svelte-xe65md) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-xe65md {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 45px;

        /* Purple background */
        background-color: white;

        /* Black border */
        border: 2px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-xe65md:hover {
        background-color: #14695b;
        color:white;
    }

    /* Mobile responsiveness */
    @media (max-width: 768px) {
        .time-container.svelte-xe65md {
            flex-direction: column;
            gap: 15px;
        }

        .form-group.svelte-xe65md {
            width: 100%;
            min-width: unset;
        }
    }

    @media (max-width: 480px) {
        .form-container.svelte-xe65md {
            padding: 10px;
        }

        .time-container.svelte-xe65md {
            gap: 12px;
        }

        input[type="time"].svelte-xe65md {
            padding: 12px 8px;
            font-size: 16px; /* Prevents zoom on iOS */
        }
    }


    .filter-buttons.svelte-f6jkc7 {
        display: flex;
        gap: 0.9rem;
        height: 60px;
        justify-content: space-between;
    }

    button.svelte-f6jkc7 {
        border-radius: 8px;
        background-color: #eeebdb;
        color: #14695b;
        font-size: 1rem;
        font-weight: bold;
        cursor: pointer;
        transition: background-color 0.3s, color 0.3s;
        width:100%;
    }

    .selected.svelte-f6jkc7 {
        background-color: #14695b; /* Change to the color you want */
        color: white;
    }

    button.svelte-f6jkc7:hover {
        background-color: #14695b;
        color: white;
    }


    .form-container.svelte-17kksav {
        width: 100%;
    }

    .form-group.svelte-17kksav {
        margin-bottom: 16px;
        display: flex;
        flex-direction: column;
        width: 60%;
    }

    .form-row.svelte-17kksav {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    button.svelte-17kksav {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        height: 45px;

        /* White background */
        background-color: white;

        /* Black border */
        border: 2px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        flex-shrink: 0;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-17kksav:hover {
        background-color: #14695b;
        color: white;
    }

    input.svelte-17kksav {
        padding: 8px;
        border-radius: 6px;
        border: 1px solid #14695b;
    }

    span.svelte-17kksav {
        margin-bottom: 5px;
        font-weight: bold;
    }

    button.svelte-17kksav span:where(.svelte-17kksav) {
        font-weight: bolder;
        font-size: larger;
    }

    .current-date-indicator.svelte-17kksav {
        margin-bottom: 16px;
        padding: 12px;
        background-color: #f0f8f5;
        border: 1px solid #14695b;
        border-radius: 6px;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .current-label.svelte-17kksav {
        font-weight: bold;
        color: #14695b;
    }

    .current-date.svelte-17kksav {
        font-weight: normal;
        color: #333;
        background-color: white;
        padding: 4px 8px;
        border-radius: 4px;
        border: 1px solid #ddd;
    }



    .classcontainer.svelte-1nlgb9o {
      padding: 15px;
      background-color: #eeebdb;
      display: flex;
      flex-direction: column;
      margin-bottom: 15px;
      gap: 10px;
      box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
      border-radius: 8px;
      color: black;
      align-items: flex-start;
    }



    .checkbox-group.svelte-1gg83j8 {
        height: 45px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        background: #eeebdb;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        transition: background-color 0.3s ease, color 0.3s ease; /* Add color transition */
    }

    .checkbox-group.selected.svelte-1gg83j8 {
        background-color: #14695B; /* Background color when selected */
    }

    .leftSide.svelte-1gg83j8 {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .leftSide.svelte-1gg83j8 label:where(.svelte-1gg83j8) {
        font-size: 1rem;
        color: #333;
        transition: color 0.3s ease; /* Smooth transition for text color */
    }

    .checkbox-group.selected.svelte-1gg83j8 .leftSide:where(.svelte-1gg83j8) label:where(.svelte-1gg83j8) {
        color: #fff; /* Change text color to white */
    }

    input[type="checkbox"].svelte-1gg83j8 {
        width: 24px;
        height: 24px;
        border-radius: 6px;
        border: 2px solid #333;
        background-color: white;
        appearance: none;
        outline: none;
        cursor: pointer;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        transition: background-color 0.3s ease;
    }

    input[type="checkbox"].svelte-1gg83j8:checked {
        background-color: #14695B;
        border: none;
        background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="20 6 9 17 4 12"/%3E%3C/svg%3E');
        background-repeat: no-repeat;
        background-position: center;

    }


    .checkbox-area.svelte-8t4ash {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        width:100%;
    }


    .checkbox-area.svelte-11c3acs {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      width: 100%;
    }

    label.svelte-11c3acs {
      padding: 0.75rem 1rem;
      border: 1px solid #ddd;
      border-radius: 8px;
      transition: background-color 0.2s ease, border-color 0.2s ease;
      display: flex;
      gap: 0.75rem;
      align-items: center;
      cursor: pointer;
    }

    label.selected.svelte-11c3acs {
      background-color: #eef6ff;
      border-color: #3b82f6;
    }

    label.disabled.svelte-11c3acs {
      opacity: 0.5;
      pointer-events: none;
    }

    label.has-debt.svelte-11c3acs {
      background-color: #fef2f2;
      border-color: #fca5a5;
    }

    label.has-debt.selected.svelte-11c3acs {
      background-color: #feebc8;
      border-color: #f6ad55;
    }

    .checkbox-container.svelte-11c3acs {
      display: flex;
      align-items: center;
    }

    input[type="checkbox"].svelte-11c3acs {
      transform: scale(1.5);
      accent-color: #3b82f6;
    }

    .content.svelte-11c3acs {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex: 1;
      gap: 1rem;
    }

    .left.svelte-11c3acs {
      display: flex;
      flex-direction: column;
      gap: 0.1rem;
    }

    .date.svelte-11c3acs {
      font-weight: 600;
      font-size: 0.95rem;
    }

    .info.svelte-11c3acs {
      font-size: 0.9rem;
    }

    .teacher.svelte-11c3acs {
      font-size: 0.85rem;
      color: #666;
    }

    .right.svelte-11c3acs {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      font-size: 1rem;
      font-weight: normal;
      white-space: nowrap;
      min-width: 60px;
    }

    .price-block.svelte-11c3acs {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      font-size: 0.98rem;
      gap: 0.1em;
    }

    .original-price.svelte-11c3acs {
      font-size: 0.95rem;
      color: #888;
    }

    .to-pay.svelte-11c3acs {
      font-size: 1.05rem;
      font-weight: bold;
      color: #14695b;
    }

    .paid-status.svelte-11c3acs {
      font-size: 1.05rem;
      font-weight: bold;
      color: #3b82f6;
    }

    .partial-status.svelte-11c3acs {
      font-size: 0.95rem;
      color: #e67e22;
    }


    .payment-area.svelte-ucy3dq {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      width: 100%;
      margin-top: 2rem;
    }

    .payment-row.svelte-ucy3dq {
      padding: 0.75rem 1rem;
      border: 1px solid #ddd;
      border-radius: 8px;
      background-color: #fdfdfd;
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
    }

    .content.svelte-ucy3dq {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 1rem;
    }

    .left.svelte-ucy3dq {
      display: flex;
      flex-direction: column;
      gap: 0.25rem;
    }

    .date.svelte-ucy3dq {
      font-weight: 600;
      font-size: 0.95rem;
    }

    .info.svelte-ucy3dq {
      font-size: 0.9rem;
    }

    .teacher.svelte-ucy3dq {
      font-size: 0.85rem;
      color: #555;
    }

    .right.svelte-ucy3dq {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      font-size: 1.2rem;
      font-weight: bold;
      white-space: nowrap;
      min-width: 60px;
    }

    .toggle-button.svelte-ucy3dq {
      margin-top: 4px;
      background: none;
      border: none;
      color: #14695b;
      font-size: 0.85rem;
      cursor: pointer;
      text-decoration: underline;
      padding: 0;
      font-weight: bold;
    }
    .toggle-button.svelte-ucy3dq:hover {
      color: #0d4c3c;
    }

    .invoice-link.svelte-ucy3dq {
      margin-top: 0.5rem;
      text-align: right;
    }
    .invoice-link.svelte-ucy3dq a:where(.svelte-ucy3dq) {
      font-size: 0.9rem;
      color: #14695b;
      text-decoration: underline;
    }
    .invoice-link.svelte-ucy3dq a:where(.svelte-ucy3dq):hover {
      color: #0d4c3c;
    }


  .teacher-invoices-container.svelte-bz8bzw {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
    background-color: #f8f9fa;
    min-height: 100vh;
  }

  .header-section.svelte-bz8bzw {
    text-align: center;
    margin-bottom: 30px;
    padding: 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .header-section.svelte-bz8bzw h2:where(.svelte-bz8bzw) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 2em;
  }

  .teacher-welcome.svelte-bz8bzw {
    margin: 0;
    color: #666;
    font-size: 1.1em;
  }

  .alert.svelte-bz8bzw {
    padding: 15px;
    border-radius: 6px;
    margin-bottom: 20px;
  }

  .alert-error.svelte-bz8bzw {
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
  }

  .loading-container.svelte-bz8bzw {
    text-align: center;
    padding: 60px 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .loading-spinner.svelte-bz8bzw {
    width: 40px;
    height: 40px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #fab45a;
    border-radius: 50%;
    animation: svelte-bz8bzw-spin 1s linear infinite;
    margin: 0 auto 20px auto;
  }

  @keyframes svelte-bz8bzw-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }

  .no-invoices.svelte-bz8bzw {
    text-align: center;
    padding: 60px 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .no-invoices-icon.svelte-bz8bzw {
    font-size: 4em;
    margin-bottom: 20px;
    opacity: 0.5;
  }

  .no-invoices.svelte-bz8bzw h3:where(.svelte-bz8bzw) {
    color: #666;
    margin-bottom: 15px;
  }

  .no-invoices.svelte-bz8bzw p:where(.svelte-bz8bzw) {
    color: #888;
    max-width: 400px;
    margin: 0 auto;
    line-height: 1.5;
  }

  .invoices-section.svelte-bz8bzw {
    background-color: white;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    margin-bottom: 20px;
  }

  .invoices-section.svelte-bz8bzw h3:where(.svelte-bz8bzw) {
    margin: 0 0 20px 0;
    color: #333;
    border-bottom: 2px solid #fab45a;
    padding-bottom: 10px;
  }

  .invoices-grid.svelte-bz8bzw {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
  }

  .invoice-card.svelte-bz8bzw {
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 20px;
    background-color: #fafafa;
    transition: box-shadow 0.2s ease;
  }

  .invoice-card.svelte-bz8bzw:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  }

  .invoice-header.svelte-bz8bzw {
    margin-bottom: 15px;
  }

  .invoice-number.svelte-bz8bzw {
    margin-bottom: 10px;
    text-align: center;
  }

  .number-display.svelte-bz8bzw {
    font-size: 1.3em;
    font-weight: bold;
    color: #fab45a;
    background-color: #f8f9fa;
    padding: 5px 12px;
    border-radius: 20px;
    border: 2px solid #fab45a;
  }

  .invoice-month.svelte-bz8bzw {
    margin-bottom: 8px;
  }

  .month-display.svelte-bz8bzw {
    font-size: 1.2em;
    font-weight: bold;
    color: #333;
  }

  .month-code.svelte-bz8bzw {
    color: #666;
    font-size: 0.9em;
    margin-left: 5px;
  }

  .invoice-date.svelte-bz8bzw small:where(.svelte-bz8bzw) {
    color: #888;
    font-size: 0.85em;
  }

  .invoice-actions.svelte-bz8bzw {
    display: flex;
    justify-content: center;
  }

  .btn.svelte-bz8bzw {
    padding: 10px 20px;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
  }

  .btn.svelte-bz8bzw:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-primary.svelte-bz8bzw {
    background-color: #fab45a;
    color: white;
  }

  .btn-primary.svelte-bz8bzw:hover:not(:disabled) {
    background-color: #e09346;
    transform: translateY(-1px);
  }

  .btn-secondary.svelte-bz8bzw {
    background-color: #6c757d;
    color: white;
  }

  .btn-secondary.svelte-bz8bzw:hover:not(:disabled) {
    background-color: #5a6268;
    transform: translateY(-1px);
  }

  .refresh-section.svelte-bz8bzw {
    text-align: center;
    padding: 20px;
  }

  /* Mobile responsiveness */
  @media (max-width: 600px) {
    .teacher-invoices-container.svelte-bz8bzw {
      padding: 12px;
    }

    .header-section.svelte-bz8bzw {
      padding: 15px;
    }

    .header-section.svelte-bz8bzw h2:where(.svelte-bz8bzw) {
      font-size: 1.5em;
    }

    .invoices-grid.svelte-bz8bzw {
      grid-template-columns: 1fr;
    }

    .invoice-card.svelte-bz8bzw {
      padding: 15px;
    }

    .btn.svelte-bz8bzw {
      width: 100%;
      padding: 12px;
    }
  }


      button.svelte-1mg3t14 span:where(.svelte-1mg3t14) {
           font-weight: bolder;
           font-size:larger;
       }

       button.svelte-1mg3t14 {
          margin-top:10px;
           box-sizing: border-box;
           display: flex;
           flex-direction: row;
           justify-content: center;
           align-items: center;
           padding: 12px 20px;
           gap: 10px;

           width: 100%;
           height: 60px;

           /* Purple background */
           background-color: #fab45a;

           /* Black border */
           border: 2px solid #000000;

           /* Box shadow */
           box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

           /* Rounded corners */
           border-radius: 8px;

           /* Inside auto layout */
           flex: none;
           order: 0;
           align-self: stretch;
           flex-grow: 0;

           /* Remove default button styling */
           outline: none;
           cursor: pointer;

           /* Remove the default button background on focus */
           background-image: none;
           transition: background-color 0.3s ease, color 0.3s ease;
       }

       /* Button hover effect */
       button.svelte-1mg3t14:hover {
           background-color: #14695b;
           color:white;
       }

       /* Text inside the button */
       span.svelte-1mg3t14 {
          margin-top:20px;
          margin-bottom: 20px;
          font-size: 1rem;
          font-weight: bold;

       }
     form.svelte-1mg3t14 {
         padding-bottom: 10px;
         padding-top:15px;
     }
     span.svelte-1mg3t14 {
         font-weight: bold;
     }

     label.svelte-1mg3t14 {
            font-size: 18px;
            font-weight: bold;
            margin-bottom: 5px;
            display: block;
            color:#14695b;
            text-align: center;
        }

        .balance-info.svelte-1mg3t14 {
            margin: 1rem 0 1.5rem 0;
            padding: 0.75rem 1rem;
            background: #f7f7f7;
            border-radius: 10px;
            text-align: center;
            font-size: 1.1rem;
            color: #14695b;
            box-shadow: 0 1px 4px rgba(40,41,61,0.04);
        }

        .balance-label.svelte-1mg3t14 {
            font-weight: 500;
            margin-right: 0.5em;
        }

        .balance-amount.svelte-1mg3t14 {
            font-weight: bold;
            color: #14695b;
        }

        .balance-date.svelte-1mg3t14 {
            font-weight: 500;
            color: #333;
        }

        .loading-container.svelte-1mg3t14 {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 2rem;
            text-align: center;
        }

        .loading-spinner.svelte-1mg3t14 {
            width: 40px;
            height: 40px;
            border: 4px solid #f3f3f3;
            border-top: 4px solid #14695b;
            border-radius: 50%;
            animation: svelte-1mg3t14-spin 1s linear infinite;
            margin-bottom: 1rem;
        }

        @keyframes svelte-1mg3t14-spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        .loading-text.svelte-1mg3t14 {
            font-size: 1.1rem;
            color: #14695b;
            font-weight: 500;
            margin: 0;
        }

        .error-container.svelte-1mg3t14 {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 2rem;
            text-align: center;
        }

        .error-text.svelte-1mg3t14 {
            color: #d32f2f;
            font-size: 1.1rem;
            margin-bottom: 1rem;
        }

        .payments-section.svelte-1mg3t14 {
            margin-top: 2rem;
            padding: 1.5rem;
            background: #f7f7f7;
            border-radius: 10px;
            box-shadow: 0 1px 4px rgba(40,41,61,0.04);
        }

        .payments-header.svelte-1mg3t14 {
            font-size: 1.5rem;
            font-weight: bold;
            color: #14695b;
            margin-bottom: 0.5rem;
            text-align: center;
        }

        .payments-description.svelte-1mg3t14 {
            font-size: 1rem;
            color: #333;
            text-align: center;
            margin-bottom: 1.5rem;
        }

        .no-payments-section.svelte-1mg3t14 {
            margin-top: 2rem;
            padding: 1.5rem;
            background: #f7f7f7;
            border-radius: 10px;
            box-shadow: 0 1px 4px rgba(40,41,61,0.04);
            text-align: center;
        }

        .no-payments-text.svelte-1mg3t14 {
            font-size: 1rem;
            color: #333;
        }


    button.svelte-esl20r span:where(.svelte-esl20r) {
         font-weight: bolder;
         font-size:larger;
     }

     button.svelte-esl20r {
        margin-top:10px;
         box-sizing: border-box;
         display: flex;
         flex-direction: row;
         justify-content: center;
         align-items: center;
         padding: 12px 20px;
         gap: 10px;

         width: 100%;
         height: 60px;

         /* Purple background */
         background-color: #fab45a;

         /* Black border */
         border: 2px solid #000000;

         /* Box shadow */
         box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

         /* Rounded corners */
         border-radius: 8px;

         /* Inside auto layout */
         flex: none;
         order: 0;
         align-self: stretch;
         flex-grow: 0;

         /* Remove default button styling */
         outline: none;
         cursor: pointer;

         /* Remove the default button background on focus */
         background-image: none;
         transition: background-color 0.3s ease, color 0.3s ease;
     }

     /* Button hover effect */
     button.svelte-esl20r:hover {
         background-color: #14695b;
         color:white;
     }

     /* Text inside the button */
     span.svelte-esl20r {
        margin-top:20px;
        margin-bottom: 20px;
        font-size: 1rem;
        font-weight: bold;

     }
   form.svelte-esl20r {
       padding-bottom: 10px;
       padding-top:15px;
   }
   span.svelte-esl20r {
       font-weight: bold;
   }

   label.svelte-esl20r {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 5px;
          display: block;
          color:#14695b;
          text-align: center;
      }

      .balance-info.svelte-esl20r {
          margin: 1rem 0 1.5rem 0;
          padding: 1rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          border-left: 4px solid #14695b;
          text-align: center;
      }

      .balance-info.svelte-esl20r > div:where(.svelte-esl20r) {
          margin-bottom: 8px;
      }

      .balance-label.svelte-esl20r {
          font-weight: 600;
          color: #14695b;
          display: inline;
      }

      .balance-amount.svelte-esl20r {
          font-weight: 700;
          font-size: 1.1em;
          color: #333;
          margin-left: 8px;
      }

      .balance-date.svelte-esl20r {
          color: #666;
          font-size: 0.9em;
          margin-left: 8px;
      }

      .loading-container.svelte-esl20r {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
      }

      .loading-spinner.svelte-esl20r {
          width: 40px;
          height: 40px;
          border: 4px solid #f3f3f3;
          border-top: 4px solid #14695b;
          border-radius: 50%;
          animation: svelte-esl20r-spin 1s linear infinite;
          margin-bottom: 1rem;
      }

      @keyframes svelte-esl20r-spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
      }

      .loading-text.svelte-esl20r {
          color: #666;
          font-size: 1rem;
          margin: 0;
      }

      .error-container.svelte-esl20r {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
          background-color: #fff3f3;
          border-radius: 8px;
          border-left: 4px solid #dc3545;
      }

      .error-text.svelte-esl20r {
          color: #dc3545;
          font-size: 1rem;
          margin-bottom: 1rem;
          text-align: center;
      }

      .error-container.svelte-esl20r button:where(.svelte-esl20r) {
          background-color: #dc3545;
          color: white;
          border: none;
          padding: 0.5rem 1rem;
          border-radius: 4px;
          cursor: pointer;
          font-size: 0.9rem;
      }

      .error-container.svelte-esl20r button:where(.svelte-esl20r):hover {
          background-color: #c82333;
      }

      .payments-section.svelte-esl20r {
          margin-top: 2rem;
          padding-top: 2rem;
          border-top: 2px solid #e9ecef;
      }

      .payments-header.svelte-esl20r {
          color: #14695b;
          font-size: 1.5rem;
          font-weight: 600;
          margin-bottom: 0.5rem;
      }

      .payments-description.svelte-esl20r {
          color: #666;
          font-size: 1rem;
          margin-bottom: 1.5rem;
          line-height: 1.4;
      }

      .no-payments-section.svelte-esl20r {
          margin-top: 2rem;
          padding: 2rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          text-align: center;
      }

      .no-payments-text.svelte-esl20r {
          font-size: 1rem;
          color: #333;
      }

      .class-window-toggle.svelte-esl20r {
          width: auto;
          height: auto;
          min-height: 36px;
          margin: 0;
          padding: 0.45rem 0.9rem;
          align-self: center;
          border: 1px solid #14695b;
          background-color: #fff7ec;
          color: #14695b;
          font-size: 0.9rem;
          font-weight: 600;
      }

      .class-window-controls.svelte-esl20r {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          gap: 0.5rem;
          margin: 0.65rem 0;
      }


  .agreement-card.svelte-192sss5{border:1px solid #d1d5db;border-radius:8px;padding:16px;box-shadow:0 .5px 2px rgba(96,97,112,.16);background:#fff}.heading-row.svelte-192sss5{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.heading-row.svelte-192sss5 h3:where(.svelte-192sss5){font-size:17px;margin:2px 0;color:#333}.heading-row.svelte-192sss5 span:where(.svelte-192sss5){padding:5px 9px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}.success.svelte-192sss5{color:#166534;background:#dcfce7}.warning.svelte-192sss5{color:#854d0e;background:#fef3c7}.error.svelte-192sss5{color:#b91c1c;background:#fee2e2}.info.svelte-192sss5{color:#1e40af;background:#dbeafe}.meta.svelte-192sss5,.progress.svelte-192sss5{color:#666;margin:10px 0}.inline-error.svelte-192sss5{color:#b91c1c;margin:10px 0}.actions.svelte-192sss5{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.actions.svelte-192sss5 button:where(.svelte-192sss5){min-height:44px;border-radius:8px;padding:9px 14px;font-weight:600;cursor:pointer}.primary.svelte-192sss5{background:#fab45a;border:1px solid #333;color:#111}.primary.svelte-192sss5:hover{background:#c98f43}.secondary.svelte-192sss5{background:white;border:1px solid #14695b;color:#14695b}.actions.svelte-192sss5 button:where(.svelte-192sss5):focus{outline:2px solid #14695b;outline-offset:2px}@media(max-width:767px){.heading-row.svelte-192sss5{flex-direction:column}.actions.svelte-192sss5{flex-direction:column}.actions.svelte-192sss5 button:where(.svelte-192sss5){width:100%}}@media(prefers-reduced-motion:reduce){.svelte-192sss5{transition:none!important}}


  .agreements.svelte-zkyoyg{width:100%;border-top:1px solid #e0e0e0;padding-top:20px}.agreements.svelte-zkyoyg h2:where(.svelte-zkyoyg){font-size:20px;color:#14695b;margin:0 0 14px}.cards.svelte-zkyoyg{display:flex;flex-direction:column;gap:14px}.load-error.svelte-zkyoyg{border:1px solid #fecaca;background:#fee2e2;color:#b91c1c;padding:12px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:10px}.load-error.svelte-zkyoyg button:where(.svelte-zkyoyg){min-height:44px;border:1px solid #14695b;border-radius:8px;background:white;color:#14695b;padding:8px 12px}.feedback.svelte-zkyoyg{color:#1e40af;background:#dbeafe;border-radius:8px;padding:10px}


    .container.svelte-axn1rj {
        display: flex;
        flex-direction: column;
        margin-bottom: 20px;
        padding: 0 16px;
        gap: 20px;
        flex: none;
        color: #333;
        align-items: flex-start;
        max-width: 600px;
        margin: 0 auto;
    }
    .input-group.svelte-axn1rj {
        margin-top: 0;
        width: 100%;
    }
    label.svelte-axn1rj {
        font-size: 16px;
        font-weight: 500;
        margin-bottom: 8px;
        display: block;
        color: #333;
    }
    input[type="email"].svelte-axn1rj, input[type="text"].svelte-axn1rj, input[type="url"].svelte-axn1rj, input[type="number"].svelte-axn1rj {
        width: 100%;
        padding: 12px;
        border: 1px solid #ccc;
        border-radius: 8px;
        background-color: #eeebdb;
        font-size: 16px;
        box-sizing: border-box;
    }

    input[type="email"].svelte-axn1rj:focus, input[type="text"].svelte-axn1rj:focus, input[type="url"].svelte-axn1rj:focus, input[type="number"].svelte-axn1rj:focus {
        outline: none;
        border-color: #14695b;
        box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.1);
    }
    button.svelte-axn1rj {
        margin-top: 20px;
        height: 50px;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        border-radius: 8px;
        border: 1px solid #000;
        font-weight: 600;
        font-size: 16px;
        background-color: #fab45a;
        color: black;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        transition: background-color 0.3s ease, color 0.3s ease;
        cursor: pointer;
    }

    button.svelte-axn1rj:hover {
        background-color: #c98f43;
        color: black;
    }

    button.svelte-axn1rj:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        background-color: #d4d4d4;
    }

    button.svelte-axn1rj:disabled:hover {
        background-color: #d4d4d4;
    }

    .loading-spinner.svelte-axn1rj {
        display: inline-block;
        width: 16px;
        height: 16px;
        border: 2px solid #333;
        border-radius: 50%;
        border-top-color: transparent;
        animation: svelte-axn1rj-spin 0.8s linear infinite;
        margin-right: 8px;
    }

    @keyframes svelte-axn1rj-spin {
        to {
            transform: rotate(360deg);
        }
    }
    .checkbox-group.svelte-axn1rj {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }
    .smaller-part.svelte-axn1rj {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 12px;
    }

    .smaller-part.svelte-axn1rj span:where(.svelte-axn1rj) {
        font-size: 15px;
        color: #555;
    }


    input[type="checkbox"].svelte-axn1rj {
        width: 24px;
        height: 24px;
        border-radius: 6px;
        border: 2px solid #333;
        background-color: white;
        appearance: none;
        outline: none;
        cursor: pointer;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        transition: background-color 0.3s ease;
    }

    input[type="checkbox"].svelte-axn1rj:checked {
        background-color: #14695B;
        border: none;
        background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="20 6 9 17 4 12"/%3E%3C/svg%3E');
        background-repeat: no-repeat;
        background-position: center;
    }

    /* Teacher-specific styles */
    .teacher-section.svelte-axn1rj {
        border-top: 1px solid #e0e0e0;
        padding-top: 24px;
        margin-top: 24px;
        width: 100%;
    }

    .section-title.svelte-axn1rj {
        font-size: 18px;
        font-weight: 600;
        margin-bottom: 20px;
        color: #14695B;
    }

    .subjects-container.svelte-axn1rj {
        max-height: 180px;
        overflow-y: auto;
        overflow-x: hidden;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 12px;
        background-color: #f8f9fa;
        margin-top: 8px;
        margin-bottom: 15px;
        overscroll-behavior: contain;
        touch-action: pan-y;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        user-select: none;
    }

    .subject-search.svelte-axn1rj {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #ccc;
        border-radius: 8px;
        background-color: white;
        font-size: 15px;
        box-sizing: border-box;
        margin: 4px 0 10px;
    }

    .subject-search.svelte-axn1rj:focus {
        outline: none;
        border-color: #14695b;
        box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.1);
    }

    .no-subject-results.svelte-axn1rj {
        padding: 12px 4px;
        color: #666;
        font-size: 14px;
        text-align: center;
    }

    .subject-item.svelte-axn1rj {
        margin-bottom: 6px;
        background-color: white;
        border-radius: 6px;
        border: 1px solid #f0f0f0;
        transition: background-color 0.2s;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .subject-item.svelte-axn1rj:hover {
        background-color: #f5f5f5;
        border-color: #e0e0e0;
    }

    .subject-label.svelte-axn1rj {
        display: flex;
        align-items: center;
        padding: 8px;
        cursor: pointer;
        width: 100%;
        position: relative;
    }

    .subject-label.svelte-axn1rj input[type="checkbox"]:where(.svelte-axn1rj) {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
    }

    .checkmark.svelte-axn1rj {
        height: 24px;
        width: 24px;
        background-color: white;
        border: 2px solid #333;
        border-radius: 6px;
        margin-right: 12px;
        position: relative;
        transition: all 0.3s ease;
        flex-shrink: 0;
    }

    .subject-label.svelte-axn1rj input:where(.svelte-axn1rj):checked ~ .checkmark:where(.svelte-axn1rj) {
        background-color: #14695B;
        border-color: #14695B;
    }

    .subject-label.svelte-axn1rj input:where(.svelte-axn1rj):checked ~ .checkmark:where(.svelte-axn1rj):after {
        content: "";
        position: absolute;
        display: block;
        left: 6px;
        top: 2px;
        width: 6px;
        height: 12px;
        border: solid white;
        border-width: 0 3px 3px 0;
        transform: rotate(45deg);
    }

    .subject-text.svelte-axn1rj {
        font-size: 15px;
        color: #444;
        user-select: none;
    }

    .subject-grades.svelte-axn1rj {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-top: 8px;
    }

    .subject-grade-row.svelte-axn1rj {
        background-color: #f8f9fa;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 12px;
    }

    .subject-grade-header.svelte-axn1rj {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 8px;
    }

    .subject-grade-name.svelte-axn1rj {
        display: inline-block;
        background-color: #14695B;
        color: white;
        padding: 6px 12px;
        border-radius: 20px;
        font-size: 14px;
        font-weight: 500;
    }

    .remove-subject-grade.svelte-axn1rj {
        cursor: pointer;
        font-weight: bold;
        font-size: 18px;
        line-height: 1;
        color: #999;
        padding: 2px 8px;
        border-radius: 6px;
        transition: background-color 0.2s, color 0.2s;
    }

    .remove-subject-grade.svelte-axn1rj:hover {
        background-color: #f0f0f0;
        color: #e74c3c;
    }

    .no-subjects-hint.svelte-axn1rj {
        font-size: 14px;
        color: #888;
        font-style: italic;
        margin-top: 8px;
    }

    .error-message.svelte-axn1rj {
        color: #e74c3c;
        font-size: 14px;
        margin-top: 4px;
        margin-bottom: 8px;
        font-weight: 500;
    }

    .input-error.svelte-axn1rj {
        border-color: #e74c3c !important;
        box-shadow: 0 0 0 2px rgba(231, 76, 60, 0.1);
    }

    .meeting-link-help.svelte-axn1rj {
        font-size: 13px;
        color: #666;
        margin-top: 4px;
        margin-bottom: 8px;
        line-height: 1.4;
    }

    .meeting-link-help.svelte-axn1rj a:where(.svelte-axn1rj) {
        color: #14695B;
        text-decoration: none;
        font-weight: 500;
        transition: color 0.2s ease;
    }

    .meeting-link-help.svelte-axn1rj a:where(.svelte-axn1rj):hover {
        color: #0f5248;
        text-decoration: underline;
    }

    .qr-code-card.svelte-axn1rj {
        width: 100%;
        box-sizing: border-box;
        margin-block: 20px;
        padding: 16px;
        border: 1px solid #d7ddd9;
        border-radius: 8px;
        background: #f8f9fa;
    }

    .qr-code-card.svelte-axn1rj h3:where(.svelte-axn1rj) {
        margin: 0 0 8px;
        color: #14695B;
        font-size: 17px;
    }

    .qr-code-help.svelte-axn1rj, .qr-code-status.svelte-axn1rj {
        margin: 0 0 12px;
        color: #666;
        font-size: 14px;
        line-height: 1.4;
    }

    .qr-code-card.svelte-axn1rj input[type="file"]:where(.svelte-axn1rj) {
        width: 100%;
    }

    .qr-code-actions.svelte-axn1rj {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    .qr-code-actions.svelte-axn1rj button:where(.svelte-axn1rj) {
        width: auto;
        min-width: 150px;
        margin-top: 12px;
    }

    .qr-code-actions.svelte-axn1rj .secondary-button:where(.svelte-axn1rj) {
        background: white;
        color: #14695B;
        border-color: #14695B;
    }

    .qr-code-success.svelte-axn1rj {
        color: #14695B;
        margin-top: 10px;
        font-size: 14px;
        font-weight: 600;
    }

    .qr-code-preview.svelte-axn1rj {
        margin-top: 14px;
    }

    .qr-code-preview.svelte-axn1rj img:where(.svelte-axn1rj) {
        display: block;
        max-width: 100%;
        max-height: 500px;
        object-fit: contain;
        border: 1px solid #ddd;
        border-radius: 8px;
        background: white;
    }

    /* Mobile responsiveness */
    @media (max-width: 768px) {
        .qr-code-card.svelte-axn1rj {
            margin-block: 16px;
        }

        .container.svelte-axn1rj {
            padding: 0 12px;
            gap: 16px;
        }

        .teacher-section.svelte-axn1rj {
            padding-top: 20px;
            margin-top: 20px;
        }

        .subjects-container.svelte-axn1rj {
            max-height: 150px;
        }

        .subject-label.svelte-axn1rj {
            padding: 12px;
        }

        .checkmark.svelte-axn1rj {
            height: 28px;
            width: 28px;
            margin-right: 15px;
        }

        .subject-label.svelte-axn1rj input:where(.svelte-axn1rj):checked ~ .checkmark:where(.svelte-axn1rj):after {
            left: 8px;
            top: 3px;
            width: 7px;
            height: 14px;
        }

        .subject-text.svelte-axn1rj {
            font-size: 16px;
        }

        button.svelte-axn1rj {
            height: 48px;
            font-size: 15px;
        }
    }


  .date-time-container.svelte-78bcvg {
    display: flex;
    align-items: center;
  }

  .time.svelte-78bcvg, .divider.svelte-78bcvg, .date.svelte-78bcvg {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-size: 1.5rem; /* Ensure same size for all */
    font-weight: bold;  /* Set same weight for uniform look */
  }

  .divider.svelte-78bcvg {
    margin: 0 0.5rem; /* Adjust margin to space out elements */
  }

  .date.svelte-78bcvg {
    color: var(--date-color);
  }


    .top-bar.svelte-znowby {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 10px;
      background-color: transparent;
      border-bottom: 1px solid #000000;
      margin-bottom: 40px;
    }

    .filler.svelte-znowby {
      width: 50px;
    }

    .label.svelte-znowby {
      font-size: x-large;
    }

    .icon.svelte-znowby {
      width: 50px;
      height: 50px;
    }
    .make_bold.svelte-znowby{
        font-weight: bold;
    }
    .noteDiv.svelte-znowby {
        background-color: transparent;
        width: 100%;
        border-radius: 6px;
        display: flex;
        justify-content: space-around;
        padding: 10px; /* Add padding to move the content */
        box-sizing: border-box;
        border: 2px solid #baccff;
    }
    .classcontainer.svelte-znowby{
        padding: 15px;
        background-color: white;
        display: flex;
        flex-direction: column;
        margin-bottom:15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color:black;
        align-items: flex-start;
      }
    .red-border.svelte-znowby {
        border: 2px solid #7e8f8c;
    }
    .blue-border.svelte-znowby {
        border: 2px solid #e8b931;
    }
    .header.svelte-znowby {
        display: flex; /* Enables flexbox */
        justify-content: center; /* Centers content horizontally */
        align-items: center; /* Centers content vertically */
        padding: 10px 0; /* Only top and bottom padding, no left or right */
        font-size: larger;
        font-weight: bold;
        width: calc(100% + 30px); /* Compensate for negative margins */
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
        box-sizing: border-box;
        margin: -15px -15px 0 -15px;
    }
    .red-header.svelte-znowby {
        background-color: #7e8f8c;
        color: white;
    }
    .blue-header.svelte-znowby {
        background-color: #e8b931;
        color: black;
    }
     /* Button styling */
     button.svelte-znowby span:where(.svelte-znowby) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-znowby {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: white;

        /* Black border */
        border: 2px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-znowby:hover {
        background-color: #e8b931;
        color:black;
    }

    /* Text inside the button */


    .results.svelte-1xnvanu { margin-top: 1.75rem; color: #1f2937; }
    .results-heading.svelte-1xnvanu { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
    .results-heading.svelte-1xnvanu h3:where(.svelte-1xnvanu) { margin: 0; font-size: 1.3rem; }
    .results-heading.svelte-1xnvanu p:where(.svelte-1xnvanu) { margin: .3rem 0 0; color: #64748b; font-size: .88rem; }
    .legend.svelte-1xnvanu { display: flex; flex-wrap: wrap; gap: .8rem; font-size: .84rem; color: #475569; }
    .legend.svelte-1xnvanu span:where(.svelte-1xnvanu) { display: inline-flex; align-items: center; gap: .35rem; }
    .legend.svelte-1xnvanu i:where(.svelte-1xnvanu) { width: .75rem; height: .75rem; border-radius: 3px; }
    .free-dot.svelte-1xnvanu { background: #22c55e; } .booked-dot.svelte-1xnvanu { background: #ef4444; } .preferred-dot.svelte-1xnvanu { background: #3b82f6; }
    .empty.svelte-1xnvanu, .warning.svelte-1xnvanu { padding: 1rem; border-radius: 9px; background: #fff7ed; border: 1px solid #fed7aa; color: #9a3412; }
    .teacher-card.svelte-1xnvanu { margin-bottom: 1rem; overflow: hidden; border: 1px solid #dbe3ec; border-radius: 12px; background: white; box-shadow: 0 2px 8px rgba(15, 23, 42, .06); }
    .teacher-card.svelte-1xnvanu header:where(.svelte-1xnvanu) { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 1.25rem; background: #fff8ed; border-bottom: 1px solid #fde4bd; }
    .identity.svelte-1xnvanu { display: flex; align-items: center; gap: .8rem; }
    .rank.svelte-1xnvanu { display: grid; place-items: center; min-width: 2rem; height: 2rem; border-radius: 50%; background: #fab45a; font-weight: 750; }
    .identity.svelte-1xnvanu h4:where(.svelte-1xnvanu) { margin: 0; font-size: 1.15rem; } .identity.svelte-1xnvanu p:where(.svelte-1xnvanu) { margin: .2rem 0 0; color: #64748b; }
    .summary.svelte-1xnvanu { display: flex; flex-direction: column; align-items: end; text-align: right; }
    .summary.svelte-1xnvanu strong:where(.svelte-1xnvanu) { color: #166534; font-size: 1.15rem; } .summary.svelte-1xnvanu span:where(.svelte-1xnvanu) { color: #64748b; font-size: .78rem; }
    .week.svelte-1xnvanu { padding: .5rem 1.25rem 1rem; }
    .day-row.svelte-1xnvanu { display: grid; grid-template-columns: 110px 1fr; gap: .75rem; padding: .75rem 0; border-bottom: 1px solid #edf1f5; }
    .day-row.svelte-1xnvanu:last-child { border-bottom: 0; } .day-name.svelte-1xnvanu { padding-top: .35rem; font-weight: 700; }
    .day-times.svelte-1xnvanu { display: flex; flex-wrap: wrap; gap: .45rem; }
    .time.svelte-1xnvanu { padding: .38rem .6rem; border: 1px solid; border-radius: 7px; font-size: .85rem; white-space: nowrap; }
    .time.svelte-1xnvanu b:where(.svelte-1xnvanu) { margin-right: .25rem; font-size: .7rem; text-transform: uppercase; }
    .free.svelte-1xnvanu { color: #166534; background: #dcfce7; border-color: #86efac; }
    .booked.svelte-1xnvanu { color: #991b1b; background: #fee2e2; border-color: #fca5a5; }
    .preferred.svelte-1xnvanu { color: #1e40af; background: #dbeafe; border-color: #93c5fd; }
    .warning.svelte-1xnvanu { margin: 1rem 1.25rem; }
    .no-overlap.svelte-1xnvanu { margin: 0 1.25rem 1rem; padding: .65rem .8rem; border-radius: 7px; color: #475569; background: #f1f5f9; }
    .no-time.svelte-1xnvanu { padding: .35rem .55rem; color: #64748b; font-style: italic; }
    @media (max-width: 700px) {
        .results-heading.svelte-1xnvanu, .teacher-card.svelte-1xnvanu header:where(.svelte-1xnvanu) { align-items: stretch; flex-direction: column; }
        .summary.svelte-1xnvanu { align-items: start; text-align: left; }
        .day-row.svelte-1xnvanu { grid-template-columns: 1fr; gap: .35rem; }
    }


    .autocomplete-wrapper.svelte-ib5fzr {
        position: relative;
        width: 100%;
    }

    .autocomplete-label.svelte-ib5fzr {
        display: block;
        margin-bottom: 0.5em;
        font-weight: 600;
        color: #374151;
    }

    .autocomplete-container.svelte-ib5fzr {
        position: relative;
    }

    .autocomplete-input.svelte-ib5fzr {
        width: 100%;
        padding: 0.75em 2.75em 0.75em 1em;
        border: 2px solid #e5e7eb;
        border-radius: 8px;
        font-size: 1em;
        background-color: white;
        color: #111827;
        transition: all 0.2s ease;
        box-sizing: border-box;
    }

    .autocomplete-clear.svelte-ib5fzr {
        position: absolute;
        top: 50%;
        right: 0.65em;
        width: 1.8em;
        height: 1.8em;
        padding: 0;
        transform: translateY(-50%);
        border: 0;
        border-radius: 50%;
        background: #eef2f7;
        color: #475569;
        cursor: pointer;
        font-size: 1.1em;
        line-height: 1;
    }

    .autocomplete-clear.svelte-ib5fzr:hover,
    .autocomplete-clear.svelte-ib5fzr:focus-visible {
        background: #e2e8f0;
        color: #111827;
        outline: 2px solid #fab45a;
        outline-offset: 1px;
    }

    .autocomplete-input.svelte-ib5fzr:focus {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    .autocomplete-dropdown.svelte-ib5fzr {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        margin-top: 4px;
        padding: 0;
        list-style: none;
        background: white;
        border: 2px solid #e5e7eb;
        border-radius: 8px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        max-height: 200px;
        overflow-y: auto;
        z-index: 1000;
    }

    .autocomplete-option.svelte-ib5fzr {
        padding: 0.75em 1em;
        cursor: pointer;
        transition: background-color 0.15s ease;
    }

    .autocomplete-option.svelte-ib5fzr:hover,
    .autocomplete-option.highlighted.svelte-ib5fzr {
        background-color: #f3f4f6;
    }

    /* (unused) .autocomplete-option mark {
        background-color: #fab45a;
        color: inherit;
        font-weight: 600;
        padding: 0;
    }*/

    .autocomplete-option.no-results.svelte-ib5fzr {
        color: #6b7280;
        font-style: italic;
        cursor: default;
    }

    .autocomplete-option.no-results.svelte-ib5fzr:hover {
        background-color: transparent;
    }


    .time-range-picker.svelte-1tyye3j {
        background: white;
        border: 2px solid #e5e7eb;
        border-radius: 10px;
        padding: 1.5em;
        margin-bottom: 1em;
    }

    .picker-header.svelte-1tyye3j {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 1.5em;
        flex-wrap: wrap;
        gap: 1em;
    }

    .day-select.svelte-1tyye3j {
        padding: 0.5em 1em;
        border: 2px solid #e5e7eb;
        border-radius: 6px;
        font-size: 1em;
        background: white;
        cursor: pointer;
    }

    .time-display.svelte-1tyye3j {
        display: flex;
        align-items: center;
        gap: 0.5em;
        font-size: 1.1em;
        font-weight: 600;
        color: #111827;
    }

    .separator.svelte-1tyye3j {
        color: #6b7280;
    }

    .timeline-container.svelte-1tyye3j {
        margin-bottom: 1em;
    }

    .timeline.svelte-1tyye3j {
        position: relative;
        height: 60px;
        cursor: pointer;
        margin-bottom: 0.5em;
    }

    .timeline-background.svelte-1tyye3j {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        height: 8px;
        background: #e5e7eb;
        border-radius: 4px;
        transform: translateY(-50%);
    }

    .time-range.svelte-1tyye3j {
        position: absolute;
        top: 50%;
        height: 8px;
        background: #fab45a;
        border-radius: 4px;
        transform: translateY(-50%);
        pointer-events: none;
    }

    .handle.svelte-1tyye3j {
        position: absolute;
        top: 50%;
        width: 20px;
        height: 20px;
        background: #fab45a;
        border: 3px solid white;
        border-radius: 50%;
        transform: translate(-50%, -50%);
        cursor: grab;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        transition: transform 0.1s ease;
    }

    .handle.svelte-1tyye3j:active {
        cursor: grabbing;
        transform: translate(-50%, -50%) scale(1.2);
    }

    .handle.svelte-1tyye3j:hover {
        background: #f9a742;
    }

    .time-labels.svelte-1tyye3j {
        display: flex;
        justify-content: space-between;
        font-size: 0.75em;
        color: #6b7280;
        padding: 0 10px;
    }

    .time-inputs.svelte-1tyye3j {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1em;
    }

    .time-input-group.svelte-1tyye3j {
        display: flex;
        flex-direction: column;
    }

    .time-input-group.svelte-1tyye3j label:where(.svelte-1tyye3j) {
        font-size: 0.875em;
        font-weight: 600;
        color: #374151;
        margin-bottom: 0.5em;
    }

    .time-input-group.svelte-1tyye3j input[type="time"]:where(.svelte-1tyye3j) {
        padding: 0.75em;
        border: 2px solid #e5e7eb;
        border-radius: 6px;
        font-size: 1em;
        transition: all 0.2s ease;
    }

    .time-input-group.svelte-1tyye3j input[type="time"]:where(.svelte-1tyye3j):focus {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    @media (max-width: 768px) {
        .time-inputs.svelte-1tyye3j {
            grid-template-columns: 1fr;
        }
    }


    .finder.svelte-wyike { width: 100%; color: #1f2937; }
    .heading.svelte-wyike h3:where(.svelte-wyike) { margin: 0 0 .35rem; font-size: 1.5rem; }
    .heading.svelte-wyike p:where(.svelte-wyike), .preferences.svelte-wyike p:where(.svelte-wyike) { margin: 0; color: #5f6b7a; line-height: 1.5; }
    .criteria.svelte-wyike { display: grid; grid-template-columns: minmax(240px, 2fr) minmax(140px, 1fr); gap: 1.25rem; margin: 1.5rem 0; }
    .form-group.svelte-wyike { min-width: 0; }
    .form-group.svelte-wyike > label:where(.svelte-wyike) { display: block; margin-bottom: .45rem; font-weight: 650; }
    select.svelte-wyike { width: 100%; min-height: 43px; padding: .6rem .75rem; border: 1px solid #cbd5e1; border-radius: 8px; background: white; font-size: 1rem; }
    .preferences.svelte-wyike { padding: 1rem; border: 1px solid #dbe3ec; border-radius: 12px; background: #f8fafc; }
    .preferences-heading.svelte-wyike { display: flex; justify-content: space-between; align-items: start; gap: 1rem; }
    .preferences.svelte-wyike h4:where(.svelte-wyike) { margin: 0 0 .25rem; }
    .preferences.svelte-wyike h4:where(.svelte-wyike) span:where(.svelte-wyike) { margin-left: .35rem; padding: .2rem .5rem; border-radius: 999px; background: #e2e8f0; color: #475569; font-size: .72rem; text-transform: uppercase; }
    .time-slot-wrapper.svelte-wyike { margin-top: 1rem; }
    button.svelte-wyike { border: 0; border-radius: 8px; cursor: pointer; font-weight: 650; }
    button.svelte-wyike:focus-visible, select.svelte-wyike:focus-visible { outline: 3px solid rgba(37, 99, 235, .35); outline-offset: 2px; }
    .secondary.svelte-wyike { padding: .7rem 1rem; color: #1d4ed8; background: #dbeafe; white-space: nowrap; }
    .remove.svelte-wyike { display: block; margin: .4rem 0 0 auto; padding: .55rem .9rem; color: #991b1b; background: #fee2e2; }
    .search.svelte-wyike { margin-top: 1rem; padding: .8rem 1.4rem; color: #111827; background: #fab45a; font-size: 1rem; }
    .search.svelte-wyike:hover { background: #f9a742; }
    .search.svelte-wyike:disabled { cursor: wait; opacity: .65; }
    .error.svelte-wyike { margin: 1rem 0 0; padding: .75rem 1rem; color: #991b1b; background: #fef2f2; border: 1px solid #fecaca; border-radius: 8px; }
    @media (max-width: 700px) {
        .criteria.svelte-wyike { grid-template-columns: 1fr; }
        .preferences-heading.svelte-wyike { flex-direction: column; }
        .secondary.svelte-wyike, .search.svelte-wyike { width: 100%; }
    }


    .capacity.svelte-1u2td8b { --blue: #2563eb; --blue-soft: #dbeafe; --green: #15803d; --green-soft: #dcfce7; --red: #b91c1c; --red-soft: #fee2e2; color: #172033; width: 100%; }
    .heading.svelte-1u2td8b, .section-heading.svelte-1u2td8b { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
    .eyebrow.svelte-1u2td8b { margin: 0 0 .25rem; color: #2563eb; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
    .heading.svelte-1u2td8b h3:where(.svelte-1u2td8b) { margin: 0; font-size: clamp(1.45rem, 2.2vw, 2rem); }
    .heading.svelte-1u2td8b p:where(.svelte-1u2td8b):not(.eyebrow), .section-heading.svelte-1u2td8b p:where(.svelte-1u2td8b) { margin: .4rem 0 0; color: #64748b; line-height: 1.5; }
    .month-badge.svelte-1u2td8b { padding: .55rem .8rem; border: 1px solid #bfdbfe; border-radius: 999px; background: #eff6ff; color: #1d4ed8; font-weight: 750; white-space: nowrap; }
    .filters.svelte-1u2td8b { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)) auto; align-items: end; gap: .85rem; margin: 1.4rem 0; padding: 1rem; border: 1px solid #dbe3ec; border-radius: 14px; background: #f8fafc; }
    label.svelte-1u2td8b { color: #334155; font-size: .82rem; font-weight: 750; }
    select.svelte-1u2td8b { display: block; width: 100%; min-height: 42px; margin-top: .35rem; padding: .55rem .7rem; border: 1px solid #cbd5e1; border-radius: 8px; background: white; color: #172033; font-size: .95rem; }
    button.svelte-1u2td8b { font: inherit; }
    button.svelte-1u2td8b:focus-visible, select.svelte-1u2td8b:focus-visible { outline: 3px solid rgba(37, 99, 235, .3); outline-offset: 2px; }
    .reset.svelte-1u2td8b { min-height: 42px; padding: .6rem .9rem; border: 0; border-radius: 8px; background: #e2e8f0; color: #334155; cursor: pointer; font-weight: 750; }
    .reset.svelte-1u2td8b:disabled { cursor: default; opacity: .5; }
    .summary-grid.svelte-1u2td8b { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .9rem; }
    .summary-card.svelte-1u2td8b { display: flex; flex-direction: column; min-height: 125px; padding: 1rem; border: 1px solid #dbe3ec; border-radius: 14px; background: white; box-shadow: 0 6px 20px rgba(15, 23, 42, .05); }
    .summary-card.svelte-1u2td8b strong:where(.svelte-1u2td8b) { margin: .55rem 0 .25rem; font-size: 1.45rem; }
    .summary-card.svelte-1u2td8b > span:where(.svelte-1u2td8b):last-child { color: #64748b; font-size: .83rem; }
    .available-card.svelte-1u2td8b { border-color: #86efac; background: linear-gradient(145deg, #f0fdf4, white); }
    .available-card.svelte-1u2td8b strong:where(.svelte-1u2td8b), .large-duration.svelte-1u2td8b { color: #166534; }
    .available-card.svelte-1u2td8b .large-duration:where(.svelte-1u2td8b) { font-size: 1.2rem; font-weight: 800; }
    .occupied-card.svelte-1u2td8b { border-color: #fecaca; }
    .card-label.svelte-1u2td8b { color: #475569; font-size: .78rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
    .historical-comparison.svelte-1u2td8b { display: flex; flex-direction: column; gap: .12rem; margin-top: .8rem; padding-top: .65rem; border-top: 1px solid #e2e8f0; }
    .historical-comparison.svelte-1u2td8b span:where(.svelte-1u2td8b) { color: #475569; font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
    .historical-comparison.svelte-1u2td8b strong:where(.svelte-1u2td8b) { margin: 0; color: #334155; font-size: .86rem; line-height: 1.35; }
    .historical-comparison.svelte-1u2td8b small:where(.svelte-1u2td8b) { color: #64748b; font-size: .72rem; }
    .weekday-section.svelte-1u2td8b, .teachers-section.svelte-1u2td8b { margin-top: 1rem; padding: 1.1rem; border: 1px solid #dbe3ec; border-radius: 14px; background: white; }
    .section-heading.svelte-1u2td8b h4:where(.svelte-1u2td8b) { margin: 0; font-size: 1.1rem; }
    .legend.svelte-1u2td8b, .teacher-totals.svelte-1u2td8b { display: flex; flex-wrap: wrap; gap: .8rem; color: #475569; font-size: .8rem; }
    .legend.svelte-1u2td8b span:where(.svelte-1u2td8b), .teacher-totals.svelte-1u2td8b span:where(.svelte-1u2td8b) { display: inline-flex; align-items: center; gap: .35rem; }
    i.svelte-1u2td8b { display: inline-block; width: 10px; height: 10px; border-radius: 3px; }
    .submitted-dot.svelte-1u2td8b { background: var(--blue); } .occupied-dot.svelte-1u2td8b { background: var(--red); } .available-dot.svelte-1u2td8b { background: var(--green); }
    .weekday-list.svelte-1u2td8b { display: grid; gap: .75rem; margin-top: 1rem; }
    .weekday-row.svelte-1u2td8b { display: grid; grid-template-columns: 175px minmax(140px, 1fr) 65px; align-items: center; gap: .75rem; }
    .weekday-name.svelte-1u2td8b { display: flex; flex-direction: column; }
    .weekday-name.svelte-1u2td8b span:where(.svelte-1u2td8b) { color: #64748b; font-size: .76rem; }
    .bar-track.svelte-1u2td8b { height: 16px; overflow: hidden; border-radius: 999px; background: #eef2f7; }
    .bar-total.svelte-1u2td8b { display: flex; height: 100%; min-width: 2px; overflow: hidden; border-radius: inherit; background: var(--blue-soft); }
    .bar-occupied.svelte-1u2td8b { background: var(--red); } .bar-available.svelte-1u2td8b { background: var(--green); }
    .weekday-total.svelte-1u2td8b { color: #475569; font-size: .8rem; text-align: right; }
    .teacher-list.svelte-1u2td8b { display: grid; gap: .65rem; margin-top: 1rem; }
    .teacher-card.svelte-1u2td8b { overflow: hidden; border: 1px solid #dbe3ec; border-radius: 11px; }
    .teacher-card.zero-capacity.svelte-1u2td8b { background: #f8fafc; }
    .teacher-toggle.svelte-1u2td8b { display: grid; grid-template-columns: minmax(0, 1fr) auto 20px; align-items: center; gap: 1rem; width: 100%; padding: .9rem 1rem; border: 0; background: transparent; color: inherit; cursor: pointer; text-align: left; }
    .teacher-toggle.svelte-1u2td8b:hover { background: #f8fafc; }
    .teacher-identity.svelte-1u2td8b, .teacher-stat.svelte-1u2td8b { display: flex; flex-direction: column; min-width: 0; }
    .teacher-identity.svelte-1u2td8b small:where(.svelte-1u2td8b), .teacher-stat.svelte-1u2td8b small:where(.svelte-1u2td8b) { overflow: hidden; color: #64748b; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
    .teacher-stat.svelte-1u2td8b { color: #166534; text-align: right; }
    .chevron.svelte-1u2td8b { color: #64748b; font-size: 1.15rem; }
    .teacher-detail.svelte-1u2td8b { padding: .85rem 1rem 1rem; border-top: 1px solid #e2e8f0; background: #f8fafc; }
    .teacher-totals.svelte-1u2td8b strong:where(.svelte-1u2td8b) { color: #172033; }
    .date-list.svelte-1u2td8b { display: grid; gap: .55rem; margin-top: .85rem; }
    .date-row.svelte-1u2td8b { display: grid; grid-template-columns: 150px 1fr; gap: .75rem; padding-top: .55rem; border-top: 1px solid #e2e8f0; }
    .date-label.svelte-1u2td8b { display: flex; flex-direction: column; font-size: .85rem; }
    .date-label.svelte-1u2td8b span:where(.svelte-1u2td8b) { color: #64748b; font-size: .75rem; }
    .time-chips.svelte-1u2td8b { display: flex; flex-wrap: wrap; gap: .4rem; }
    .time-chip.svelte-1u2td8b { display: inline-flex; align-items: center; gap: .45rem; padding: .4rem .6rem; border: 1px solid #86efac; border-radius: 8px; background: var(--green-soft); color: #14532d; font-weight: 750; }
    .time-chip.svelte-1u2td8b small:where(.svelte-1u2td8b) { padding-left: .45rem; border-left: 1px solid #86efac; font-size: .7rem; font-weight: 600; }
    .fully-booked.svelte-1u2td8b { padding: .35rem .55rem; border-radius: 7px; background: var(--red-soft); color: #991b1b; font-size: .8rem; font-weight: 700; }
    .empty.svelte-1u2td8b, .error.svelte-1u2td8b, .loading.svelte-1u2td8b { display: flex; flex-direction: column; align-items: center; gap: .4rem; padding: 2rem; border-radius: 12px; background: #f8fafc; color: #64748b; text-align: center; }
    .empty.svelte-1u2td8b strong:where(.svelte-1u2td8b) { color: #334155; }
    .error.svelte-1u2td8b { align-items: flex-start; border: 1px solid #fecaca; background: #fef2f2; color: #991b1b; text-align: left; }
    .error.svelte-1u2td8b button:where(.svelte-1u2td8b) { margin-top: .4rem; padding: .55rem .8rem; border: 0; border-radius: 7px; background: #991b1b; color: white; cursor: pointer; }
    .loading.svelte-1u2td8b { flex-direction: row; justify-content: center; }
    .loading.svelte-1u2td8b span:where(.svelte-1u2td8b) { width: 9px; height: 9px; border-radius: 50%; background: #60a5fa; animation: svelte-1u2td8b-pulse 1s infinite alternate; }
    .loading.svelte-1u2td8b span:where(.svelte-1u2td8b):nth-child(2) { animation-delay: .2s; } .loading.svelte-1u2td8b span:where(.svelte-1u2td8b):nth-child(3) { animation-delay: .4s; }
    .refreshing.svelte-1u2td8b { opacity: .62; transition: opacity .15s; }
    .no-slots.svelte-1u2td8b, .footnote.svelte-1u2td8b { color: #64748b; font-size: .78rem; }
    .footnote.svelte-1u2td8b { margin: .8rem .2rem 0; text-align: right; }
    @keyframes svelte-1u2td8b-pulse { to { opacity: .25; transform: translateY(-3px); } }
    @media (max-width: 900px) { .summary-grid.svelte-1u2td8b { grid-template-columns: repeat(2, 1fr); } .filters.svelte-1u2td8b { grid-template-columns: repeat(2, 1fr); } }
    @media (max-width: 620px) {
        .heading.svelte-1u2td8b, .section-heading.svelte-1u2td8b { flex-direction: column; }
        .filters.svelte-1u2td8b, .summary-grid.svelte-1u2td8b { grid-template-columns: 1fr; }
        .reset.svelte-1u2td8b { width: 100%; }
        .weekday-row.svelte-1u2td8b { grid-template-columns: 115px 1fr; }
        .weekday-total.svelte-1u2td8b { display: none; }
        .teacher-toggle.svelte-1u2td8b { grid-template-columns: minmax(0, 1fr) 90px 16px; gap: .5rem; padding: .8rem; }
        .date-row.svelte-1u2td8b { grid-template-columns: 1fr; }
        .footnote.svelte-1u2td8b { text-align: left; }
    }


  .refresh-database-container.svelte-35gq6u {
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background-color: #f8f9fa;
    border-radius: 8px;
  }

  .refresh-database-container.svelte-35gq6u h3:where(.svelte-35gq6u) {
    margin: 0 0 20px 0;
    color: #333;
    text-align: center;
  }

  .refresh-options.svelte-35gq6u {
    margin-bottom: 20px;
    text-align: center;
  }

  .refresh-options.svelte-35gq6u label:where(.svelte-35gq6u) {
    margin-right: 20px;
    cursor: pointer;
  }

  .month-selection-section.svelte-35gq6u {
    background-color: white;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .month-selection-section.svelte-35gq6u label:where(.svelte-35gq6u) {
    display: block;
    margin-bottom: 10px;
    font-weight: 500;
    color: #333;
  }

  .month-select.svelte-35gq6u {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
  }

  .month-select.svelte-35gq6u:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
  }

  .date-selection-section.svelte-35gq6u {
    background-color: white;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .date-selection-section.svelte-35gq6u label:where(.svelte-35gq6u) {
    display: block;
    margin-bottom: 10px;
    font-weight: 500;
    color: #333;
  }

  .date-input.svelte-35gq6u {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
  }

  .date-input.svelte-35gq6u:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
  }

  .week-selection-section.svelte-35gq6u {
    background-color: white;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .week-selection-section.svelte-35gq6u label:where(.svelte-35gq6u) {
    display: block;
    margin-bottom: 10px;
    font-weight: 500;
    color: #333;
  }

  .month-year-selectors.svelte-35gq6u {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
  }

  .month-year-select.svelte-35gq6u {
    flex: 1;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
  }

  .month-year-select.svelte-35gq6u:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
  }

  .week-select.svelte-35gq6u {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
  }

  .week-select.svelte-35gq6u:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
  }

  .teacher-selection-section.svelte-35gq6u {
    background-color: white;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .teacher-selection-section.svelte-35gq6u label:where(.svelte-35gq6u) {
    display: block;
    margin-bottom: 15px;
    font-weight: 500;
  }

  .input-container.svelte-35gq6u {
    position: relative;
    margin-top: 15px;
  }

  .search-input.svelte-35gq6u {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
  }

  .search-input.svelte-35gq6u:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 0 2px rgba(76, 175, 80, 0.2);
  }

  .autocomplete-list.svelte-35gq6u {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 6px 6px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  }

  .autocomplete-list.svelte-35gq6u li:where(.svelte-35gq6u) {
    border-bottom: 1px solid #f0f0f0;
  }

  .autocomplete-list.svelte-35gq6u li:where(.svelte-35gq6u):last-child {
    border-bottom: none;
  }

  .autocomplete-list.svelte-35gq6u button:where(.svelte-35gq6u) {
    width: 100%;
    padding: 12px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.2s ease;
  }

  .autocomplete-list.svelte-35gq6u button:where(.svelte-35gq6u):hover {
    background-color: #f5f5f5;
  }

  .teacher-option.svelte-35gq6u {
    display: flex;
    flex-direction: column;
  }

  .teacher-name.svelte-35gq6u {
    font-weight: 500;
    color: #333;
  }

  .teacher-email.svelte-35gq6u {
    font-size: 0.8em;
    color: #666;
    margin-top: 2px;
  }

  .selected-teacher.svelte-35gq6u {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #e8f5e8;
    padding: 15px;
    border-radius: 6px;
    margin-top: 15px;
    border: 1px solid #c8e6c9;
  }

  .selected-teacher-info.svelte-35gq6u {
    color: #2e7d32;
  }

  .btn-clear.svelte-35gq6u {
    background-color: #f44336;
    color: white;
    border: none;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.8em;
  }

  .btn-clear.svelte-35gq6u:hover {
    background-color: #d32f2f;
  }

  .refresh-button.svelte-35gq6u {
    width: 100%;
    padding: 12px 20px;
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    transition: background-color 0.2s ease;
  }

  .refresh-button.svelte-35gq6u:hover:not(:disabled) {
    background-color: #45a049;
  }

  .refresh-button.svelte-35gq6u:disabled {
    background-color: #cccccc;
    cursor: not-allowed;
  }

  .progress-message.svelte-35gq6u {
    margin-top: 12px;
    color: #1f4b75;
    text-align: center;
    font-size: 0.9em;
  }

  .success-message.svelte-35gq6u {
    color: #2e7d32;
    background: #e8f5e8;
    padding: 12px;
    border-radius: 6px;
    border-left: 4px solid #2e7d32;
    margin-top: 20px;
    font-size: 0.9em;
  }

  .success-message.has-warnings.svelte-35gq6u {
    color: #ed6c02;
    background: #fff4e5;
    border-left-color: #ed6c02;
  }

  .stats-info.svelte-35gq6u {
    margin-top: 8px;
    font-size: 0.85em;
    opacity: 0.9;
  }

  .warning-message.svelte-35gq6u {
    color: #ed6c02;
    background: #fff4e5;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #ed6c02;
    margin-top: 15px;
    font-size: 0.9em;
  }

  .warning-header.svelte-35gq6u {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
  }

  .warning-icon.svelte-35gq6u {
    font-size: 1.2em;
  }

  .warning-stats.svelte-35gq6u {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 8px;
    margin-bottom: 15px;
    padding: 10px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 4px;
  }

  .stat-item.svelte-35gq6u {
    font-size: 0.85em;
    padding: 5px;
  }

  .skipped-events-list.svelte-35gq6u {
    margin-top: 12px;
    max-height: 400px;
    overflow-y: auto;
    border-top: 1px solid rgba(237, 108, 2, 0.3);
    padding-top: 12px;
  }

  .skipped-header.svelte-35gq6u {
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 0.95em;
  }

  .skipped-event-item.svelte-35gq6u {
    background: white;
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 8px;
    border: 1px solid rgba(237, 108, 2, 0.2);
  }

  .event-summary.svelte-35gq6u {
    font-weight: 600;
    color: #333;
    margin-bottom: 6px;
    font-size: 0.95em;
  }

  .event-details.svelte-35gq6u {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 0.8em;
    color: #666;
  }

  .event-date.svelte-35gq6u,
  .event-time.svelte-35gq6u {
    display: inline-flex;
    align-items: center;
    gap: 4px;
  }

  .event-missing.svelte-35gq6u {
    color: #d32f2f;
    font-weight: 500;
  }

  .more-events-note.svelte-35gq6u {
    margin-top: 10px;
    font-style: italic;
    text-align: center;
    color: #666;
    font-size: 0.85em;
  }

  .error-message.svelte-35gq6u {
    color: #d32f2f;
    background: #ffebee;
    padding: 12px;
    border-radius: 6px;
    border-left: 4px solid #d32f2f;
    margin-top: 20px;
    font-size: 0.9em;
  }

  /* Mobile responsiveness */
  @media (max-width: 600px) {
    .refresh-database-container.svelte-35gq6u {
      padding: 15px;
    }

    .refresh-options.svelte-35gq6u {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .refresh-options.svelte-35gq6u label:where(.svelte-35gq6u) {
      margin-bottom: 0;
      margin-right: 0;
    }

    .selected-teacher.svelte-35gq6u {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }

    .warning-stats.svelte-35gq6u {
      grid-template-columns: 1fr;
    }

    .event-details.svelte-35gq6u {
      flex-direction: column;
      gap: 6px;
    }

    .skipped-events-list.svelte-35gq6u {
      max-height: 300px;
    }
  }


    .rating-box.svelte-1n9m14z {
        display: flex;
        align-items: center;
        margin-bottom: 0.5rem;
        flex-direction: column;
    }


    .rating-box.svelte-1n9m14z span:where(.svelte-1n9m14z) {
        flex: 1;
        font-weight: bold;
    }

    .rating-box.svelte-1n9m14z .rating-value:where(.svelte-1n9m14z) {
        flex: 2;
        font-size: 1.5rem;
        font-weight: bold;
    }

    /* Rating colors */
    .rating-red.svelte-1n9m14z {
        color: red;
    }

    .rating-orange.svelte-1n9m14z {
        color: orange;
    }

    .rating-yellow.svelte-1n9m14z {
        color: #e8e531
    }

    .rating-yellow-green.svelte-1n9m14z {
        color: #9acd32; /* Between yellow and green */
    }

    .rating-green.svelte-1n9m14z {
        color: green;
    }


    .noteDiv.svelte-134hfby {
        background-color: transparent;
        width: 100%;
        border-radius: 6px;
        display: flex;
        justify-content: space-around;
        padding: 10px; /* Add padding to move the content */
        box-sizing: border-box;
        border: 2px solid #baccff;
    }


    .status.svelte-hsq9hn {
        display: flex;
        align-items: center;
        font-size: 1.1rem;
        margin: 10px 0;
        justify-content: center;
        height: 80px;
        }

    .text.svelte-hsq9hn {
      margin-left: 8px;
    }

    .green-check.svelte-hsq9hn {
      color: #58ff04
    }

    .red-cross.svelte-hsq9hn {
      color: red;
    }


	.student-search.svelte-17motvp {
		position: relative;
		width: 100%;
	}

	.search-row.svelte-17motvp {
		display: flex;
		gap: 10px;
		align-items: center;
	}

	.search-input.svelte-17motvp {
		flex: 1;
		width: 100%;
		padding: 12px 14px;
		border: 1px solid #ccc;
		border-radius: 8px;
		font-size: 14px;
	}

	.search-input.svelte-17motvp:disabled {
		background: #f7f7f7;
		cursor: not-allowed;
	}

	.spinner.svelte-17motvp {
		font-size: 12px;
		color: #666;
	}

	.change-btn.svelte-17motvp {
		padding: 10px 14px;
		border: 1px solid #ccc;
		background: white;
		border-radius: 8px;
		cursor: pointer;
		white-space: nowrap;
	}

	.selected-card.svelte-17motvp {
		margin-top: 12px;
		padding: 12px 14px;
		border-radius: 8px;
		border: 1px solid #bcdcff;
		background: #e7f3ff;
	}

	.results.svelte-17motvp {
		margin-top: 8px;
		border: 1px solid #e0e0e0;
		border-radius: 8px;
		background: white;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
		max-height: 320px;
		overflow: auto;
	}

	.result.svelte-17motvp {
		padding: 10px 12px;
		border-bottom: 1px solid #f0f0f0;
		cursor: pointer;
		outline: none;
	}

	.result.svelte-17motvp:hover,
	.result.svelte-17motvp:focus {
		background: #f8f9fa;
	}

	.result.svelte-17motvp:last-child {
		border-bottom: none;
	}

	.name.svelte-17motvp {
		font-weight: 600;
		color: #222;
	}

	.meta.svelte-17motvp {
		color: #666;
		font-size: 12px;
		margin-top: 2px;
	}

	.no-results.svelte-17motvp {
		margin-top: 8px;
		padding: 12px 14px;
		border-radius: 8px;
		background: #f8f9fa;
		border: 1px solid #e0e0e0;
		color: #666;
	}


    h2.svelte-tdqkb6{
        color:black;
    }
    .displayComps.svelte-tdqkb6{
        display: flex;

        flex-direction: column;
        align-items: center;
        text-align:center;
    }
    .teacher-comment.svelte-tdqkb6{
        text-align:center;
    }
    .student-comment.svelte-tdqkb6{
        text-align:center;
    }
    .comment-group.svelte-tdqkb6 {
        margin-bottom: 2rem;
        padding: 1rem;
        border: 1px solid #ccc;
        background-color: #f9f9f9;
        border-radius: 5px;

    }

    .side-by-side.svelte-tdqkb6 {
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }

    .student-comment.svelte-tdqkb6, .teacher-comment.svelte-tdqkb6 {
        width: 48%;

        border: 1px solid #ddd;
        border-radius: 5px;
        background-color: #fff;
    }

    .student-comment.svelte-tdqkb6 {
        background-color: #f0f8ff; /* Light blue for distinction */
    }

    .teacher-comment.svelte-tdqkb6 {
        background-color: #f5f5dc; /* Light beige for distinction */
    }


  .creation-status.svelte-11i28sf { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid #cbd5e1; }
  .creation-status.svelte-11i28sf h3:where(.svelte-11i28sf) { margin: 0 0 .75rem; }
  .creation-status.svelte-11i28sf > label:where(.svelte-11i28sf) { display: block; font-weight: 600; margin-bottom: .4rem; }
  .creation-status.svelte-11i28sf > input:where(.svelte-11i28sf) { box-sizing: border-box; width: 100%; padding: .6rem; border: 1px solid #94a3b8; border-radius: 4px; }
  .students.svelte-11i28sf { padding: 0; list-style: none; }
  .students.svelte-11i28sf li:where(.svelte-11i28sf) { border-bottom: 1px solid #e2e8f0; }
  .student-row.svelte-11i28sf { display: flex; flex-wrap: wrap; gap: .35rem .7rem; width: 100%; text-align: left; padding: .7rem .3rem; background: transparent; border: 0; cursor: pointer; }
  .student-row.svelte-11i28sf strong:where(.svelte-11i28sf) { width: 100%; }
  .student-row.svelte-11i28sf span:where(.svelte-11i28sf) { color: #475569; }
  .student-row.svelte-11i28sf small:where(.svelte-11i28sf) { padding: .15rem .3rem; background: #f1f5f9; border-radius: 3px; }
  .student-row.svelte-11i28sf small.good:where(.svelte-11i28sf) { background: #dcfce7; color: #166534; }
  .student-row.svelte-11i28sf small.warn:where(.svelte-11i28sf) { background: #fee2e2; color: #991b1b; }
  .student-detail.svelte-11i28sf { padding: .8rem; background: #f8fafc; border-radius: 4px; }
  .student-detail.svelte-11i28sf h4:where(.svelte-11i28sf) { margin: 1rem 0 .45rem; }
  .student-detail.svelte-11i28sf h4:where(.svelte-11i28sf) span:where(.svelte-11i28sf) { font-weight: normal; }
  dl.svelte-11i28sf { display: grid; grid-template-columns: minmax(8rem, 1fr) 2fr; gap: .35rem .6rem; margin: .4rem 0 1rem; overflow-wrap: anywhere; }
  dt.svelte-11i28sf { font-weight: 600; } dd.svelte-11i28sf { margin: 0; }
  .resend-dialog.svelte-11i28sf { margin-top: .7rem; padding: .8rem; border: 1px solid #94a3b8; background: white; }
  .recipient.svelte-11i28sf { display: block; margin: .45rem 0; }
  .pages.svelte-11i28sf { display: flex; align-items: center; gap: .7rem; }
  .error.svelte-11i28sf { color: #b91c1c; }
  .success.svelte-11i28sf { color: #166534; }
  .edit-form.svelte-11i28sf > label:where(.svelte-11i28sf), .delete-confirmation.svelte-11i28sf > label:where(.svelte-11i28sf) { display: block; margin: .65rem 0; font-weight: 600; }
  .edit-form.svelte-11i28sf > label:where(.svelte-11i28sf) input:where(.svelte-11i28sf), .delete-confirmation.svelte-11i28sf input:where(.svelte-11i28sf) { display: block; width: 100%; box-sizing: border-box; padding: .5rem; margin-top: .3rem; }
  .actions.svelte-11i28sf { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .7rem; }
  .delete-section.svelte-11i28sf { border-top: 1px solid #cbd5e1; margin-top: 1.5rem; padding-top: 1rem; }
  .danger.svelte-11i28sf { color: #991b1b; border: 1px solid #991b1b; border-radius: 4px; padding: .5rem .7rem; background: white; }
  button.svelte-11i28sf { cursor: pointer; }
  button.svelte-11i28sf:disabled { cursor: default; opacity: .55; }


    .labelDiv.svelte-pq8r98 {
      display: flex;
      justify-content: space-around;
    }
    .field.svelte-pq8r98 {
      display: flex;
      flex-direction: column;
      margin-bottom: 1rem;
      width: 100%;
    }
    .field.svelte-pq8r98 label:where(.svelte-pq8r98) {
      font-weight: bold;
      margin-bottom: 0.4rem;
    }
    .field.svelte-pq8r98 input:where(.svelte-pq8r98) {
      padding: 0.5rem;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 1rem;
      width: 100%;
    }

    /* Smaller width for specific fields */
    #studentPhoneNumber.svelte-pq8r98,
    #parentPhoneNumber.svelte-pq8r98 {
      max-width: 167px;
    }

    #googleCalSearchable.svelte-pq8r98 {
      max-width: 250px;
    }

    #grade.svelte-pq8r98 {
      max-width: 80px;
    }
    .checkbox-fieldset.svelte-pq8r98 {
      border: 1px solid #ccc;
      border-radius: 4px;
      padding: 0.8rem;
      margin: 0;
    }
    .checkbox-fieldset.svelte-pq8r98 legend:where(.svelte-pq8r98) {
      font-weight: bold;
      padding: 0 0.5rem;
      margin-bottom: 0.5rem;
    }
    .checkbox-group.svelte-pq8r98 {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
    }
    .checkbox-item.svelte-pq8r98 {
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }
    .checkbox-item.svelte-pq8r98 input[type="checkbox"]:where(.svelte-pq8r98) {
      width: auto;
      margin: 0;
    }
    .checkbox-item.svelte-pq8r98 label:where(.svelte-pq8r98) {
      margin: 0;
      font-weight: normal;
      cursor: pointer;
      flex: 1;
    }
    .price-indicator.svelte-pq8r98 {
      color: #007acc;
      font-weight: bold;
      font-size: 0.9rem;
      background-color: #e8f4fd;
      padding: 0.2rem 0.5rem;
      border-radius: 12px;
      border: 1px solid #b3d9f2;
      margin-left: 0.5rem;
      white-space: nowrap;
    }
    .input-with-info.svelte-pq8r98 {
      position: relative;
    }
    .info-box.svelte-pq8r98 {
      margin-top: 0.3rem;
      padding: 0.4rem;
      background-color: #f0f8ff;
      border: 1px solid #b0d4f1;
      border-radius: 4px;
      font-size: 0.85rem;
    }
    .info-text.svelte-pq8r98 {
      color: #2c5aa0;
      font-style: italic;
    }
    .btn.svelte-pq8r98 {
      display: inline-block;
      padding: 0.6rem 1rem;
      background-color: #0055aa;
      color: #fff;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      font-size: 1rem;
      margin-top: 0.5rem;
    }
    .btn.svelte-pq8r98:hover {
      background-color: #004488;
    }
    .btn.svelte-pq8r98:disabled {
      opacity: 0.6;
      cursor: not-allowed;
    }
    .error.svelte-pq8r98 {
      color: #cc0000;
      margin-top: 0.8rem;
    }
    .success.svelte-pq8r98 {
      color: #006600;
      margin-top: 0.8rem;
    }


    .pricing-modifier-container.svelte-1agt0cg {
        max-width: 900px;
        margin: 0 auto;
        padding: 20px;
    }

    .pricing-modifier-container.embedded.svelte-1agt0cg {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .description.svelte-1agt0cg {
        color: #666;
        margin-bottom: 20px;
        font-style: italic;
    }

    .filter-buttons.svelte-1agt0cg {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .filter-btn.svelte-1agt0cg {
        padding: 8px 16px;
        border: 1px solid #ddd;
        background: white;
        cursor: pointer;
        border-radius: 6px;
        font-size: 14px;
        transition: all 0.2s ease;
    }

    .filter-btn.active.svelte-1agt0cg {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .filter-btn.svelte-1agt0cg:hover:not(.active) {
        background: #f5f5f5;
    }

    .search-container.svelte-1agt0cg {
        margin-bottom: 20px;
    }

    .search-input.svelte-1agt0cg {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
    }

    .loading.svelte-1agt0cg, .no-users.svelte-1agt0cg {
        text-align: center;
        padding: 40px;
        color: #666;
        font-style: italic;
    }

    .users-list.svelte-1agt0cg {
        background: white;
        border: 1px solid #ddd;
        border-radius: 8px;
        overflow: hidden;
    }

    .user-item.svelte-1agt0cg {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 20px;
        border-bottom: 1px solid #eee;
        transition: background-color 0.2s ease;
    }

    .user-item.svelte-1agt0cg:last-child {
        border-bottom: none;
    }

    .user-item.svelte-1agt0cg:hover {
        background-color: #f9f9f9;
    }

    .user-item.has-modifier.svelte-1agt0cg {
        background-color: #fff8e1;
    }

    .user-item.has-modifier.svelte-1agt0cg:hover {
        background-color: #fff3c4;
    }

    .user-info.svelte-1agt0cg {
        flex: 1;
    }

    .user-name.svelte-1agt0cg {
        font-weight: 500;
        margin-bottom: 4px;
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }

    .user-type.svelte-1agt0cg {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .user-type.student.svelte-1agt0cg {
        background-color: #e3f2fd;
        color: #1976d2;
    }

    .user-type.teacher.svelte-1agt0cg {
        background-color: #f3e5f5;
        color: #7b1fa2;
    }

    .modifier-status.svelte-1agt0cg {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .modifier-status.custom.svelte-1agt0cg {
        background-color: #fff3cd;
        color: #856404;
    }

    .modifier-status.default.svelte-1agt0cg {
        background-color: #d4edda;
        color: #155724;
    }

    .user-email.svelte-1agt0cg {
        color: #666;
        font-size: 13px;
        margin-bottom: 4px;
    }

    .modifier-summary.svelte-1agt0cg {
        color: #666;
        font-size: 12px;
        font-style: italic;
    }

    .user-actions.svelte-1agt0cg {
        display: flex;
        gap: 8px;
        flex-shrink: 0;
    }

    .action-btn.svelte-1agt0cg {
        padding: 6px 12px;
        border: 1px solid;
        background: white;
        cursor: pointer;
        border-radius: 4px;
        font-size: 12px;
        transition: all 0.2s ease;
    }

    .action-btn.edit.svelte-1agt0cg {
        border-color: #007bff;
        color: #007bff;
    }

    .action-btn.edit.svelte-1agt0cg:hover:not(:disabled) {
        background: #007bff;
        color: white;
    }

    .action-btn.delete.svelte-1agt0cg {
        border-color: #dc3545;
        color: #dc3545;
    }

    .action-btn.delete.svelte-1agt0cg:hover:not(:disabled) {
        background: #dc3545;
        color: white;
    }

    .action-btn.svelte-1agt0cg:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }

    /* Modal styles */
    .modal-overlay.svelte-1agt0cg {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1000;
        padding: 20px;
    }

    .modal-overlay.embedded.svelte-1agt0cg {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        background: transparent;
        z-index: auto;
        padding: 0;
        display: block;
    }

    .modal-content.svelte-1agt0cg {
        background: white;
        border-radius: 8px;
        max-width: 600px;
        width: 100%;
        max-height: 90vh;
        overflow-y: auto;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .modal-content.embedded.svelte-1agt0cg {
        max-width: none;
        max-height: none;
        height: auto;
        overflow: visible;
        box-shadow: none;
        border: 1px solid rgba(0, 0, 0, 0.08);
    }

    .modal-header.svelte-1agt0cg {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px;
        border-bottom: 1px solid #eee;
        background: #f8f9fa;
        border-radius: 8px 8px 0 0;
    }

    .modal-header.svelte-1agt0cg h4:where(.svelte-1agt0cg) {
        margin: 0;
        color: #333;
    }

    .close-btn.svelte-1agt0cg {
        background: none;
        border: none;
        font-size: 24px;
        cursor: pointer;
        color: #666;
        padding: 0;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
    }

    .close-btn.svelte-1agt0cg:hover {
        background: #e9ecef;
        color: #333;
    }

    .modal-body.svelte-1agt0cg {
        padding: 20px;
    }

    .section.svelte-1agt0cg {
        margin-bottom: 25px;
        padding-bottom: 20px;
        border-bottom: 1px solid #f0f0f0;
    }

    .section.svelte-1agt0cg:last-child {
        border-bottom: none;
        margin-bottom: 0;
    }

    .section.svelte-1agt0cg h5:where(.svelte-1agt0cg) {
        margin: 0 0 8px 0;
        color: #333;
        font-size: 16px;
    }

    .section-description.svelte-1agt0cg {
        margin: 0 0 15px 0;
        color: #666;
        font-size: 13px;
        font-style: italic;
    }

    .checkbox-label.svelte-1agt0cg {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        margin-bottom: 12px;
        cursor: pointer;
        padding: 8px;
        border-radius: 4px;
        transition: background-color 0.2s ease;
    }

    .checkbox-label.svelte-1agt0cg:hover {
        background-color: #f8f9fa;
    }

    .checkbox-label.svelte-1agt0cg input[type="checkbox"]:where(.svelte-1agt0cg) {
        margin: 2px 0 0 0;
        cursor: pointer;
    }

    .checkbox-label.svelte-1agt0cg span:where(.svelte-1agt0cg) {
        font-size: 14px;
        line-height: 1.4;
    }

    .form-group.svelte-1agt0cg {
        margin-bottom: 15px;
    }

    .form-group.svelte-1agt0cg label:where(.svelte-1agt0cg) {
        display: block;
        margin-bottom: 5px;
        font-weight: 500;
        color: #333;
        font-size: 14px;
    }

    .form-input.svelte-1agt0cg, .form-textarea.svelte-1agt0cg {
        width: 100%;
        padding: 8px 12px;
        border: 1px solid #ddd;
        border-radius: 4px;
        font-size: 14px;
        font-family: inherit;
    }

    .type-pricing-subsection.svelte-1agt0cg {
        margin-top: 18px;
        padding-top: 12px;
        border-top: 1px solid #eee;
    }

    .type-pricing-subsection.svelte-1agt0cg h6:where(.svelte-1agt0cg) {
        margin: 0 0 6px 0;
        font-size: 14px;
        font-weight: 700;
        color: #333;
    }

    .type-pricing-form.svelte-1agt0cg {
        display: grid;
        grid-template-columns: 1fr 220px;
        gap: 12px;
        align-items: end;
        margin-bottom: 12px;
    }

    .type-pricing-form.svelte-1agt0cg .form-actions:where(.svelte-1agt0cg) {
        grid-column: 1 / -1;
        display: flex;
        justify-content: flex-end;
        gap: 10px;
    }

    .type-rules-table.svelte-1agt0cg {
        border: 1px solid #e0e0e0;
        border-radius: 6px;
        overflow: hidden;
        background: #fff;
    }

    .type-rules-header.svelte-1agt0cg,
    .type-rules-row.svelte-1agt0cg {
        display: grid;
        grid-template-columns: 1.2fr 1.4fr 90px 110px 110px 70px 140px;
        gap: 10px;
        align-items: center;
        padding: 8px 10px;
    }

    .type-rules-header.svelte-1agt0cg {
        background: #f8f9fa;
        font-weight: 700;
        font-size: 12px;
        border-bottom: 1px solid #e0e0e0;
        color: #333;
    }

    .type-rules-row.svelte-1agt0cg {
        font-size: 13px;
        border-bottom: 1px solid #f0f0f0;
    }

    .type-rules-row.svelte-1agt0cg:last-child {
        border-bottom: none;
    }

    .type-rules-row.svelte-1agt0cg .actions:where(.svelte-1agt0cg) {
        display: flex;
        justify-content: flex-end;
        gap: 6px;
    }

    .edit-btn.svelte-1agt0cg {
        border: 1px solid #14695b;
        border-radius: 4px;
        padding: 5px 8px;
        background: #fff;
        color: #14695b;
        cursor: pointer;
    }

    .no-types.svelte-1agt0cg {
        color: #666;
        font-style: italic;
        margin: 8px 0;
    }

    .form-textarea.svelte-1agt0cg {
        resize: vertical;
        min-height: 80px;
    }

    /* Manual Class Discount Styles */
    .month-selector.svelte-1agt0cg {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;
        margin-bottom: 20px;
        padding: 10px;
        background: #f8f9fa;
        border-radius: 6px;
    }

    .month-nav-btn.svelte-1agt0cg {
        background: #007bff;
        color: white;
        border: none;
        border-radius: 4px;
        padding: 8px 12px;
        cursor: pointer;
        font-weight: bold;
        transition: background-color 0.2s ease;
    }

    .month-nav-btn.svelte-1agt0cg:hover {
        background: #0056b3;
    }

    .month-display.svelte-1agt0cg {
        font-size: 16px;
        font-weight: 600;
        color: #333;
        min-width: 150px;
        text-align: center;
    }

    .loading-classes.svelte-1agt0cg, .no-classes.svelte-1agt0cg {
        text-align: center;
        padding: 20px;
        color: #666;
        font-style: italic;
        background: #f8f9fa;
        border-radius: 6px;
        border: 1px solid #e0e0e0;
    }

    .classes-grid.svelte-1agt0cg {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-bottom: 20px;
        max-height: 300px;
        overflow-y: auto;
        padding: 10px;
        border: 1px solid #e0e0e0;
        border-radius: 6px;
        background: #fafafa;
    }

    .class-discount-label.svelte-1agt0cg {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 12px;
        border: 1px solid #ddd;
        border-radius: 6px;
        background: white;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .class-discount-label.svelte-1agt0cg:hover {
        background: #f0f8ff;
        border-color: #007bff;
    }

    .class-discount-label.discounted.svelte-1agt0cg {
        background: #d4edda;
        border-color: #28a745;
    }

    .class-discount-label.discounted.svelte-1agt0cg:hover {
        background: #c3e6cb;
    }

    .class-discount-label.no-transaction.svelte-1agt0cg {
        background: #f8d7da;
        border-color: #dc3545;
        cursor: not-allowed;
    }

    .class-discount-label.no-transaction.svelte-1agt0cg:hover {
        background: #f5c6cb;
    }

    .class-discount-label.future-class.svelte-1agt0cg {
        background: #e7f3ff;
        border-color: #2196f3;
    }

    .class-discount-label.future-class.svelte-1agt0cg:hover {
        background: #d0e7ff;
    }

    .class-discount-label.future-class.discounted.svelte-1agt0cg {
        background: #e8f5e9;
        border-color: #4caf50;
    }

    .class-discount-label.future-class.discounted.svelte-1agt0cg:hover {
        background: #c8e6c9;
    }

    /* (unused) .class-discount-label input[type="checkbox"] {
        margin-top: 2px;
        cursor: pointer;
    }*/

    /* (unused) .class-discount-label input[type="checkbox"]:disabled {
        cursor: not-allowed;
    }*/

    .class-info.svelte-1agt0cg {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .class-name.svelte-1agt0cg {
        font-weight: 600;
        color: #333;
        font-size: 14px;
        line-height: 1.3;
    }

    .class-date.svelte-1agt0cg {
        font-size: 12px;
        color: #666;
    }

    .class-price.svelte-1agt0cg {
        font-size: 13px;
        font-weight: 600;
        color: #28a745;
    }

    .class-price.discounted-price.svelte-1agt0cg {
        color: #007bff;
    }

    .original-price.svelte-1agt0cg {
        font-size: 11px;
        color: #999;
        text-decoration: line-through;
        font-weight: normal;
    }

    .warning.svelte-1agt0cg {
        font-size: 11px;
        color: #dc3545;
        font-weight: 600;
    }

    .info-badge.svelte-1agt0cg {
        font-size: 11px;
        color: #2196f3;
        font-weight: 600;
    }

    .future-badge.svelte-1agt0cg {
        font-size: 11px;
        color: #2196f3;
        font-weight: 600;
        background: #e3f2fd;
        padding: 2px 6px;
        border-radius: 3px;
        margin-left: 5px;
    }

    .detection-method.svelte-1agt0cg {
        font-size: 10px;
        color: #6c757d;
        font-style: italic;
    }

    .discount-summary.svelte-1agt0cg {
        background: #f8f9fa;
        padding: 15px;
        border-radius: 6px;
        border: 1px solid #e9ecef;
        margin-top: 15px;
    }

    .discount-summary.svelte-1agt0cg p:where(.svelte-1agt0cg) {
        margin: 5px 0;
        font-size: 14px;
        line-height: 1.4;
        color: #495057;
    }


    .modal-footer.svelte-1agt0cg {
        display: flex;
        justify-content: flex-end;
        gap: 12px;
        padding: 20px;
        border-top: 1px solid #eee;
        background: #f8f9fa;
        border-radius: 0 0 8px 8px;
    }

    .btn.svelte-1agt0cg {
        padding: 10px 20px;
        border: none;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .btn.primary.svelte-1agt0cg {
        background: #28a745;
        color: white;
    }

    .btn.primary.svelte-1agt0cg:hover:not(:disabled) {
        background: #218838;
    }

    .btn.secondary.svelte-1agt0cg {
        background: #6c757d;
        color: white;
    }

    .btn.secondary.svelte-1agt0cg:hover:not(:disabled) {
        background: #545b62;
    }

    .btn.svelte-1agt0cg:disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

    .error-message.svelte-1agt0cg {
        background: #f8d7da;
        color: #721c24;
        padding: 12px;
        border-radius: 6px;
        margin-top: 20px;
        border: 1px solid #f5c6cb;
    }

    .success-message.svelte-1agt0cg {
        background: #d4edda;
        color: #155724;
        padding: 12px;
        border-radius: 6px;
        margin-top: 20px;
        border: 1px solid #c3e6cb;
    }

    /* Responsive design */
    @media (max-width: 768px) {
        .pricing-modifier-container.svelte-1agt0cg {
            padding: 15px;
        }

        .filter-buttons.svelte-1agt0cg {
            flex-direction: column;
        }

        .user-item.svelte-1agt0cg {
            flex-direction: column;
            align-items: flex-start;
            gap: 15px;
        }

        .user-actions.svelte-1agt0cg {
            align-self: stretch;
            justify-content: space-between;
        }

        .modal-overlay.svelte-1agt0cg {
            padding: 10px;
        }

        .modal-content.svelte-1agt0cg {
            max-height: 95vh;
        }

        .modal-footer.svelte-1agt0cg {
            flex-direction: column;
        }
    }


    .pricing-modifier-container.svelte-va1onn {
        max-width: 900px;
        margin: 0 auto;
        padding: 20px;
    }

    .pricing-modifier-container.embedded.svelte-va1onn {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .description.svelte-va1onn {
        color: #666;
        margin-bottom: 20px;
        font-style: italic;
    }

    .filter-buttons.svelte-va1onn {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .filter-btn.svelte-va1onn {
        padding: 8px 16px;
        border: 1px solid #ddd;
        background: white;
        cursor: pointer;
        border-radius: 6px;
        font-size: 14px;
        transition: all 0.2s ease;
    }

    .filter-btn.active.svelte-va1onn {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .filter-btn.svelte-va1onn:hover:not(.active) {
        background: #f5f5f5;
    }

    .search-container.svelte-va1onn {
        margin-bottom: 20px;
    }

    .search-input.svelte-va1onn {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
    }

    .loading.svelte-va1onn, .no-teachers.svelte-va1onn {
        text-align: center;
        padding: 40px;
        color: #666;
        font-style: italic;
    }

    .teachers-list.svelte-va1onn {
        background: white;
        border: 1px solid #ddd;
        border-radius: 8px;
        overflow: hidden;
    }

    .teacher-item.svelte-va1onn {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 20px;
        border-bottom: 1px solid #eee;
        transition: background-color 0.2s ease;
    }

    .teacher-item.svelte-va1onn:last-child {
        border-bottom: none;
    }

    .teacher-item.svelte-va1onn:hover {
        background-color: #f9f9f9;
    }

    .teacher-item.has-modifier.svelte-va1onn {
        background-color: #fff8e1;
    }

    .teacher-item.has-modifier.svelte-va1onn:hover {
        background-color: #fff3c4;
    }

    .teacher-info.svelte-va1onn {
        flex: 1;
    }

    .teacher-name.svelte-va1onn {
        font-weight: 500;
        margin-bottom: 4px;
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }

    .user-type.svelte-va1onn {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .user-type.teacher.svelte-va1onn {
        background-color: #f3e5f5;
        color: #7b1fa2;
    }

    .modifier-status.svelte-va1onn {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .modifier-status.custom.svelte-va1onn {
        background-color: #fff3cd;
        color: #856404;
    }

    .modifier-status.default.svelte-va1onn {
        background-color: #d4edda;
        color: #155724;
    }

    .teacher-email.svelte-va1onn {
        color: #666;
        font-size: 13px;
        margin-bottom: 4px;
    }

    .modifier-summary.svelte-va1onn {
        color: #666;
        font-size: 12px;
        font-style: italic;
    }

    .teacher-actions.svelte-va1onn {
        display: flex;
        gap: 8px;
        flex-shrink: 0;
    }

    .action-btn.svelte-va1onn {
        padding: 6px 12px;
        border: 1px solid;
        background: white;
        cursor: pointer;
        border-radius: 4px;
        font-size: 12px;
        transition: all 0.2s ease;
    }

    .action-btn.edit.svelte-va1onn {
        border-color: #007bff;
        color: #007bff;
    }

    .action-btn.edit.svelte-va1onn:hover:not(:disabled) {
        background: #007bff;
        color: white;
    }

    .action-btn.delete.svelte-va1onn {
        border-color: #dc3545;
        color: #dc3545;
    }

    .action-btn.delete.svelte-va1onn:hover:not(:disabled) {
        background: #dc3545;
        color: white;
    }

    .action-btn.svelte-va1onn:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }

    /* Modal styles */
    .modal-overlay.svelte-va1onn {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1000;
        padding: 20px;
    }

    .modal-content.svelte-va1onn {
        background: white;
        border-radius: 8px;
        max-width: 700px;
        width: 100%;
        max-height: 90vh;
        overflow-y: auto;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .modal-header.svelte-va1onn {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px;
        border-bottom: 1px solid #eee;
        background: #f8f9fa;
        border-radius: 8px 8px 0 0;
    }

    .modal-header.svelte-va1onn h4:where(.svelte-va1onn) {
        margin: 0;
        color: #333;
    }

    .close-btn.svelte-va1onn {
        background: none;
        border: none;
        font-size: 24px;
        cursor: pointer;
        color: #666;
        padding: 0;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
    }

    .close-btn.svelte-va1onn:hover {
        background: #e9ecef;
        color: #333;
    }

    .modal-body.svelte-va1onn {
        padding: 20px;
    }

    .section.svelte-va1onn {
        margin-bottom: 25px;
        padding-bottom: 20px;
        border-bottom: 1px solid #f0f0f0;
    }

    .section.svelte-va1onn:last-child {
        border-bottom: none;
        margin-bottom: 0;
    }

    .section.svelte-va1onn h5:where(.svelte-va1onn) {
        margin: 0 0 8px 0;
        color: #333;
        font-size: 16px;
    }

    .section-description.svelte-va1onn {
        margin: 0 0 15px 0;
        color: #666;
        font-size: 13px;
        font-style: italic;
    }

    .pricing-grid.svelte-va1onn {
        display: grid;
        grid-template-columns: 1fr;
        gap: 15px;
    }

    @media (min-width: 600px) {
        .pricing-grid.svelte-va1onn {
            grid-template-columns: 1fr 1fr;
        }
    }

    .form-group.svelte-va1onn {
        margin-bottom: 15px;
    }

    .form-group.svelte-va1onn label:where(.svelte-va1onn) {
        display: block;
        margin-bottom: 5px;
        font-weight: 500;
        color: #333;
        font-size: 14px;
    }

    .price-input.svelte-va1onn {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 5px;
    }

    .currency.svelte-va1onn {
        font-weight: bold;
        color: #333;
        font-size: 16px;
    }

    .form-input.svelte-va1onn, .form-textarea.svelte-va1onn {
        width: 100%;
        padding: 8px 12px;
        border: 1px solid #ddd;
        border-radius: 4px;
        font-size: 14px;
        font-family: inherit;
    }

    .price-input.svelte-va1onn .form-input:where(.svelte-va1onn) {
        max-width: 120px;
    }

    .default-note.svelte-va1onn {
        font-size: 12px;
        color: #666;
        font-style: italic;
    }

    .form-textarea.svelte-va1onn {
        resize: vertical;
        min-height: 80px;
    }

    .bonus-criteria.svelte-va1onn {
        margin-top: 10px;
        font-size: 12px;
        color: #666;
        font-style: italic;
        line-height: 1.4;
    }

    .checkbox-label.svelte-va1onn {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        cursor: pointer;
        padding: 8px;
        border-radius: 4px;
        transition: background-color 0.2s ease;
    }

    .checkbox-label.svelte-va1onn:hover {
        background-color: #f8f9fa;
    }

    .checkbox-label.svelte-va1onn input[type="checkbox"]:where(.svelte-va1onn) {
        margin: 2px 0 0 0;
        cursor: pointer;
    }

    .checkbox-label.svelte-va1onn span:where(.svelte-va1onn) {
        font-size: 14px;
        line-height: 1.4;
    }

    .month-selector.svelte-va1onn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;
        margin-bottom: 20px;
        padding: 10px;
        background: #f8f9fa;
        border-radius: 6px;
    }

    .month-nav-btn.svelte-va1onn {
        background: #007bff;
        color: white;
        border: none;
        border-radius: 4px;
        padding: 8px 12px;
        cursor: pointer;
        font-weight: bold;
        transition: background-color 0.2s ease;
    }

    .month-nav-btn.svelte-va1onn:hover {
        background: #0056b3;
    }

    .month-display.svelte-va1onn {
        font-size: 16px;
        font-weight: 600;
        color: #333;
        min-width: 150px;
        text-align: center;
    }

    .loading-classes.svelte-va1onn, .no-classes.svelte-va1onn {
        text-align: center;
        padding: 20px;
        color: #666;
        font-style: italic;
        background: #f8f9fa;
        border-radius: 6px;
        border: 1px solid #e0e0e0;
    }

    .classes-grid.svelte-va1onn {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-bottom: 20px;
        max-height: 300px;
        overflow-y: auto;
        padding: 10px;
        border: 1px solid #e0e0e0;
        border-radius: 6px;
        background: #fafafa;
    }

    .class-discount-label.svelte-va1onn {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 12px;
        border: 1px solid #ddd;
        border-radius: 6px;
        background: white;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .class-discount-label.svelte-va1onn:hover {
        background: #f0f8ff;
        border-color: #007bff;
    }

    .class-discount-label.overridden.svelte-va1onn {
        background: #fff3cd;
        border-color: #fab45a;
    }

    .class-discount-label.overridden.svelte-va1onn:hover {
        background: #ffe8b6;
    }

    .class-info.svelte-va1onn {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .class-name.svelte-va1onn {
        font-weight: 600;
        color: #333;
        font-size: 14px;
        line-height: 1.3;
    }

    .class-date.svelte-va1onn {
        font-size: 12px;
        color: #666;
    }

    .class-price.svelte-va1onn {
        font-size: 13px;
        font-weight: 600;
        color: #28a745;
    }

    .class-price.discounted-price.svelte-va1onn {
        color: #007bff;
    }

    .original-price.svelte-va1onn {
        font-size: 11px;
        color: #999;
        text-decoration: line-through;
        font-weight: normal;
    }

    .info-badge.svelte-va1onn {
        font-size: 11px;
        color: #856404;
        font-weight: 600;
    }

    .discount-summary.svelte-va1onn {
        background: #f8f9fa;
        padding: 15px;
        border-radius: 6px;
        border: 1px solid #e9ecef;
        margin-top: 15px;
    }

    .discount-summary.svelte-va1onn p:where(.svelte-va1onn) {
        margin: 5px 0;
        font-size: 14px;
        line-height: 1.4;
        color: #495057;
    }

    .modal-footer.svelte-va1onn {
        display: flex;
        justify-content: flex-end;
        gap: 12px;
        padding: 20px;
        border-top: 1px solid #eee;
        background: #f8f9fa;
        border-radius: 0 0 8px 8px;
    }

    .btn.svelte-va1onn {
        padding: 10px 20px;
        border: none;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .btn.primary.svelte-va1onn {
        background: #28a745;
        color: white;
    }

    .btn.primary.svelte-va1onn:hover:not(:disabled) {
        background: #218838;
    }

    .btn.secondary.svelte-va1onn {
        background: #6c757d;
        color: white;
    }

    .btn.secondary.svelte-va1onn:hover:not(:disabled) {
        background: #545b62;
    }

    .btn.svelte-va1onn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

    .error-message.svelte-va1onn {
        background: #f8d7da;
        color: #721c24;
        padding: 12px;
        border-radius: 6px;
        margin-top: 20px;
        border: 1px solid #f5c6cb;
    }

    .success-message.svelte-va1onn {
        background: #d4edda;
        color: #155724;
        padding: 12px;
        border-radius: 6px;
        margin-top: 20px;
        border: 1px solid #c3e6cb;
    }

    /* Responsive design */
    @media (max-width: 768px) {
        .pricing-modifier-container.svelte-va1onn {
            padding: 15px;
        }

        .filter-buttons.svelte-va1onn {
            flex-direction: column;
        }

        .teacher-item.svelte-va1onn {
            flex-direction: column;
            align-items: flex-start;
            gap: 15px;
        }

        .teacher-actions.svelte-va1onn {
            align-self: stretch;
            justify-content: space-between;
        }

        .modal-overlay.svelte-va1onn {
            padding: 10px;
        }

        .modal-content.svelte-va1onn {
            max-height: 95vh;
        }

        .modal-footer.svelte-va1onn {
            flex-direction: column;
        }

        .pricing-grid.svelte-va1onn {
            grid-template-columns: 1fr;
        }

        .price-input.svelte-va1onn {
            flex-direction: column;
            align-items: flex-start;
            gap: 5px;
        }

        .price-input.svelte-va1onn .form-input:where(.svelte-va1onn) {
            max-width: none;
        }
    }


    .manual-payment-container.svelte-tpnasf {
        max-width: 600px;
        margin: 0 auto;
        padding: 2rem;
        background: white;
        border-radius: 12px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .header.svelte-tpnasf {
        text-align: center;
        margin-bottom: 2rem;
    }

    .header.svelte-tpnasf h2:where(.svelte-tpnasf) {
        color: #14695b;
        font-size: 1.8rem;
        margin-bottom: 0.5rem;
    }

    .header.svelte-tpnasf p:where(.svelte-tpnasf) {
        color: #666;
        font-size: 1rem;
    }

    .form-group.svelte-tpnasf {
        margin-bottom: 1.5rem;
        position: relative;
    }

    .form-group.svelte-tpnasf label:where(.svelte-tpnasf) {
        display: block;
        font-weight: 600;
        color: #14695b;
        margin-bottom: 0.5rem;
        font-size: 1rem;
    }

    .required.svelte-tpnasf {
        color: #dc3545;
    }

    input.svelte-tpnasf {
        width: 100%;
        padding: 0.75rem;
        border: 2px solid #e9ecef;
        border-radius: 8px;
        font-size: 1rem;
        transition: border-color 0.3s ease;
        box-sizing: border-box;
    }

    input.svelte-tpnasf:focus {
        outline: none;
        border-color: #14695b;
    }

    .user-search-container.svelte-tpnasf {
        position: relative;
    }

    .search-input.svelte-tpnasf {
        width: 100%;
        padding: 12px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 0.9em;
        background-color: white;
    }

    .search-input.svelte-tpnasf:focus {
        outline: none;
        border-color: #14695b;
        box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.2);
    }

    .search-results.svelte-tpnasf {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        border: 1px solid #ddd;
        border-top: none;
        border-radius: 0 0 6px 6px;
        max-height: 200px;
        overflow-y: auto;
        z-index: 1000;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }

    .search-result-item.svelte-tpnasf {
        padding: 0.75rem;
        cursor: pointer;
        border-bottom: 1px solid #f0f0f0;
        transition: background-color 0.2s ease;
    }

    .search-result-item.svelte-tpnasf:hover {
        background-color: #f8f9fa;
    }

    .search-result-item.svelte-tpnasf:last-child {
        border-bottom: none;
    }

    .user-info.svelte-tpnasf {
        font-weight: 500;
        color: #333;
        font-size: 0.9em;
    }

    .user-email.svelte-tpnasf {
        font-size: 0.8em;
        color: #666;
    }

    .amount-input.svelte-tpnasf {
        position: relative;
    }

    .euro-symbol.svelte-tpnasf {
        position: absolute;
        left: 0.75rem;
        top: 50%;
        transform: translateY(-50%);
        color: #666;
        font-weight: 600;
    }

    .amount-input.svelte-tpnasf input:where(.svelte-tpnasf) {
        padding-left: 2rem;
    }

    .submit-button.svelte-tpnasf {
        width: 100%;
        padding: 1rem 2rem;
        background-color: #14695b;
        color: white;
        border: none;
        border-radius: 8px;
        font-size: 1.1rem;
        font-weight: 600;
        cursor: pointer;
        transition: background-color 0.3s ease;
        margin-top: 1rem;
    }

    .submit-button.svelte-tpnasf:hover:not(:disabled) {
        background-color: #0f5a4f;
    }

    .submit-button.svelte-tpnasf:disabled {
        background-color: #6c757d;
        cursor: not-allowed;
    }

    .success-message.svelte-tpnasf {
        background-color: #d4edda;
        color: #155724;
        padding: 1rem;
        border-radius: 8px;
        margin-bottom: 1.5rem;
        border: 1px solid #c3e6cb;
    }

    .error-message.svelte-tpnasf {
        background-color: #f8d7da;
        color: #721c24;
        padding: 1rem;
        border-radius: 8px;
        margin-bottom: 1.5rem;
        border: 1px solid #f5c6cb;
    }

    .form-help.svelte-tpnasf {
        font-size: 0.9rem;
        color: #666;
        margin-top: 0.25rem;
    }

    .requirements-info.svelte-tpnasf {
        background-color: #e7f3ff;
        border: 1px solid #b8daff;
        border-radius: 8px;
        padding: 1rem;
        margin-bottom: 2rem;
    }

    .requirements-info.svelte-tpnasf h4:where(.svelte-tpnasf) {
        color: #004085;
        margin-bottom: 0.5rem;
        font-size: 1rem;
    }

    .requirements-info.svelte-tpnasf ul:where(.svelte-tpnasf) {
        margin: 0;
        padding-left: 1.5rem;
        color: #004085;
    }

    .requirements-info.svelte-tpnasf li:where(.svelte-tpnasf) {
        margin-bottom: 0.25rem;
    }

    .selected-user-badge.svelte-tpnasf {
        display: inline-flex;
        align-items: center;
        background-color: #d1ecf1;
        color: #0c5460;
        padding: 0.5rem 0.75rem;
        border-radius: 6px;
        font-size: 0.9rem;
        margin-top: 0.5rem;
    }

    .selected-user-badge.svelte-tpnasf .remove-selection:where(.svelte-tpnasf) {
        background: none;
        border: none;
        color: #0c5460;
        margin-left: 0.5rem;
        cursor: pointer;
        font-weight: bold;
    }

    .checkbox-container.svelte-tpnasf {
        margin-bottom: 1rem;
    }

    .checkbox-label.svelte-tpnasf {
        display: flex;
        align-items: center;
        cursor: pointer;
        font-weight: 600;
        color: #14695b;
        font-size: 1rem;
    }

    .checkbox-label.svelte-tpnasf input[type="checkbox"]:where(.svelte-tpnasf) {
        width: auto;
        margin-right: 0.5rem;
        transform: scale(1.2);
    }

    .date-input-container.svelte-tpnasf {
        margin-top: 1rem;
        padding: 1rem;
        background-color: #f8f9fa;
        border-radius: 8px;
        border: 1px solid #e9ecef;
    }

    .date-input-container.svelte-tpnasf label:where(.svelte-tpnasf) {
        display: block;
        font-weight: 600;
        color: #14695b;
        margin-bottom: 0.5rem;
        font-size: 1rem;
    }

    .date-input-container.svelte-tpnasf input[type="date"]:where(.svelte-tpnasf) {
        width: 100%;
        padding: 0.75rem;
        border: 2px solid #e9ecef;
        border-radius: 8px;
        font-size: 1rem;
        transition: border-color 0.3s ease;
        box-sizing: border-box;
    }

    .date-input-container.svelte-tpnasf input[type="date"]:where(.svelte-tpnasf):focus {
        outline: none;
        border-color: #14695b;
    }

    .history.svelte-tpnasf {
        margin-top: 2rem;
        border-top: 1px solid #e9ecef;
        padding-top: 1.5rem;
    }

    .history.svelte-tpnasf h3:where(.svelte-tpnasf) {
        margin: 0 0 0.75rem 0;
        color: #14695b;
        font-size: 1.1rem;
    }

    .history-list.svelte-tpnasf {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        max-height: 420px;
        overflow-y: auto;
        padding-right: 6px;
    }

    .history-row.svelte-tpnasf {
        border: 1px solid #eee;
        border-radius: 8px;
        padding: 0.75rem;
        background: #fafafa;
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        align-items: flex-start;
    }

    .history-left.svelte-tpnasf {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        min-width: 0;
    }

    .history-meta.svelte-tpnasf {
        color: #333;
        font-weight: 600;
        font-size: 0.95rem;
    }

    .history-sub.svelte-tpnasf {
        color: #555;
        font-size: 0.9rem;
        word-break: break-word;
    }

    .history-email.svelte-tpnasf {
        color: #777;
        font-size: 0.85rem;
        word-break: break-word;
    }

    .history-parent.svelte-tpnasf {
        color: #555;
        font-size: 0.9rem;
        word-break: break-word;
    }

    .history-right.svelte-tpnasf {
        font-weight: 700;
        white-space: nowrap;
        color: #14695b;
    }

    .muted.svelte-tpnasf {
        color: #777;
        font-size: 0.9rem;
    }

    .csv-button.svelte-tpnasf {
        width: 100%;
        padding: 0.75rem 1rem;
        background-color: #0b6bcb;
        color: white;
        border: none;
        border-radius: 8px;
        font-size: 0.95rem;
        font-weight: 700;
        cursor: pointer;
        transition: background-color 0.2s ease;
        margin-top: 1rem;
    }

    .csv-button.svelte-tpnasf:hover:not(:disabled) {
        background-color: #095aa9;
    }

    .csv-button.svelte-tpnasf:disabled {
        background-color: #6c757d;
        cursor: not-allowed;
    }


    .container.svelte-1ul21wf {
        padding: 20px;
        max-width: 800px;
        margin: 0 auto;
    }

    .header.svelte-1ul21wf {
        margin-bottom: 30px;
    }

    h2.svelte-1ul21wf {
        color: #333;
        margin-bottom: 10px;
    }

    .description.svelte-1ul21wf {
        color: #666;
        font-size: 14px;
        margin-bottom: 20px;
        line-height: 1.6;
    }

    .month-selector-section.svelte-1ul21wf {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
        margin-bottom: 20px;
    }

    .month-selector-section.svelte-1ul21wf h3:where(.svelte-1ul21wf) {
        color: #333;
        font-size: 18px;
        margin-bottom: 15px;
    }

    .month-selector-wrapper.svelte-1ul21wf {
        display: flex;
        gap: 10px;
        align-items: center;
        flex-wrap: wrap;
    }

    .month-selector-label.svelte-1ul21wf {
        font-weight: 600;
        color: #495057;
    }

    .month-selector.svelte-1ul21wf {
        padding: 8px 12px;
        border: 1px solid #ced4da;
        border-radius: 5px;
        font-size: 14px;
        min-width: 200px;
        cursor: pointer;
    }

    .month-selector.svelte-1ul21wf:focus {
        outline: none;
        border-color: #007bff;
        box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
    }

    .clear-month-button.svelte-1ul21wf {
        padding: 8px 16px;
        background: #6c757d;
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: 14px;
        transition: background-color 0.2s;
    }

    .clear-month-button.svelte-1ul21wf:hover {
        background: #5a6268;
    }

    .download-section.svelte-1ul21wf {
        background: #f8f9fa;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 30px;
        margin-bottom: 20px;
    }

    .download-buttons.svelte-1ul21wf {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        align-items: center;
    }

    .download-button.svelte-1ul21wf {
        background: #007bff;
        color: white;
        border: none;
        border-radius: 5px;
        padding: 12px 24px;
        font-size: 16px;
        cursor: pointer;
        transition: background-color 0.2s;
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    .download-button.svelte-1ul21wf:hover:not(:disabled) {
        background: #0056b3;
    }

    .download-button.payments.svelte-1ul21wf {
        background: #198754; /* green */
    }

    .download-button.payments.svelte-1ul21wf:hover:not(:disabled) {
        background: #146c43;
    }

    .download-button.svelte-1ul21wf:disabled {
        background: #6c757d;
        cursor: not-allowed;
        opacity: 0.6;
    }

    .download-icon.svelte-1ul21wf {
        font-size: 18px;
    }

    .info-box.svelte-1ul21wf {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
        margin-bottom: 20px;
    }

    .info-item.svelte-1ul21wf {
        display: flex;
        justify-content: space-between;
        padding: 8px 0;
        border-bottom: 1px solid #f0f0f0;
    }

    .info-item.svelte-1ul21wf:last-child {
        border-bottom: none;
    }

    .info-label.svelte-1ul21wf {
        font-weight: 600;
        color: #495057;
    }

    .info-value.svelte-1ul21wf {
        color: #6c757d;
    }

    .error-message.svelte-1ul21wf {
        background: #f8d7da;
        border: 1px solid #f5c6cb;
        color: #721c24;
        padding: 12px;
        border-radius: 5px;
        margin-bottom: 20px;
    }

    .loading-spinner.svelte-1ul21wf {
        display: inline-block;
        width: 16px;
        height: 16px;
        border: 2px solid #ffffff;
        border-radius: 50%;
        border-top-color: transparent;
        animation: svelte-1ul21wf-spin 0.8s linear infinite;
    }

    @keyframes svelte-1ul21wf-spin {
        to { transform: rotate(360deg); }
    }

    .success-message.svelte-1ul21wf {
        background: #d4edda;
        border: 1px solid #c3e6cb;
        color: #155724;
        padding: 12px;
        border-radius: 5px;
        margin-top: 20px;
    }

    .csv-format-info.svelte-1ul21wf {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
    }

    .csv-format-info.svelte-1ul21wf h3:where(.svelte-1ul21wf) {
        color: #333;
        font-size: 18px;
        margin-bottom: 15px;
    }

    .csv-format-info.svelte-1ul21wf ul:where(.svelte-1ul21wf) {
        list-style-type: none;
        padding-left: 0;
    }

    .csv-format-info.svelte-1ul21wf li:where(.svelte-1ul21wf) {
        padding: 8px 0;
        color: #495057;
        border-bottom: 1px solid #f0f0f0;
    }

    .csv-format-info.svelte-1ul21wf li:where(.svelte-1ul21wf):last-child {
        border-bottom: none;
    }

    .csv-format-info.svelte-1ul21wf code:where(.svelte-1ul21wf) {
        background: #f8f9fa;
        padding: 2px 6px;
        border-radius: 3px;
        font-family: 'Courier New', monospace;
        color: #e83e8c;
    }


    .container.svelte-1lseh04 {
        padding: 20px;
        max-width: 1000px;
        margin: 0 auto;
    }

    .header.svelte-1lseh04 {
        margin-bottom: 30px;
    }

    h2.svelte-1lseh04 {
        color: #333;
        margin-bottom: 10px;
    }

    .description.svelte-1lseh04 {
        color: #666;
        font-size: 14px;
        margin-bottom: 20px;
        line-height: 1.6;
    }

    .month-selector-section.svelte-1lseh04 {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
        margin-bottom: 20px;
    }

    .month-selector-section.svelte-1lseh04 h3:where(.svelte-1lseh04) {
        color: #333;
        font-size: 18px;
        margin-bottom: 15px;
    }

    .month-selector-wrapper.svelte-1lseh04 {
        display: flex;
        gap: 10px;
        align-items: center;
        flex-wrap: wrap;
    }

    .month-selector-label.svelte-1lseh04 {
        font-weight: 600;
        color: #495057;
    }

    .month-selector.svelte-1lseh04 {
        padding: 8px 12px;
        border: 1px solid #ced4da;
        border-radius: 5px;
        font-size: 14px;
        min-width: 200px;
        cursor: pointer;
    }

    .month-selector.svelte-1lseh04:focus {
        outline: none;
        border-color: #007bff;
        box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
    }

    .clear-month-button.svelte-1lseh04 {
        padding: 8px 16px;
        background: #6c757d;
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: 14px;
        transition: background-color 0.2s;
    }

    .clear-month-button.svelte-1lseh04:hover {
        background: #5a6268;
    }

    .download-section.svelte-1lseh04 {
        background: #f8f9fa;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 30px;
        margin-bottom: 20px;
    }

    .download-button.svelte-1lseh04 {
        background: #007bff;
        color: white;
        border: none;
        border-radius: 5px;
        padding: 12px 24px;
        font-size: 16px;
        cursor: pointer;
        transition: background-color 0.2s;
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    .download-button.svelte-1lseh04:hover:not(:disabled) {
        background: #0056b3;
    }

    .download-button.svelte-1lseh04:disabled {
        background: #6c757d;
        cursor: not-allowed;
        opacity: 0.6;
    }

    .download-icon.svelte-1lseh04 {
        font-size: 18px;
    }

    .info-box.svelte-1lseh04 {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
        margin-bottom: 20px;
    }

    .info-item.svelte-1lseh04 {
        display: flex;
        justify-content: space-between;
        padding: 8px 0;
        border-bottom: 1px solid #f0f0f0;
    }

    .info-item.svelte-1lseh04:last-child {
        border-bottom: none;
    }

    .info-label.svelte-1lseh04 {
        font-weight: 600;
        color: #495057;
    }

    .info-value.svelte-1lseh04 {
        color: #6c757d;
    }

    .error-message.svelte-1lseh04 {
        background: #f8d7da;
        border: 1px solid #f5c6cb;
        color: #721c24;
        padding: 12px;
        border-radius: 5px;
        margin-bottom: 20px;
    }

    .warning-message.svelte-1lseh04 {
        background: #fff3cd;
        border: 1px solid #ffeaa7;
        color: #856404;
        padding: 12px;
        border-radius: 5px;
        margin-bottom: 20px;
    }

    .loading-spinner.svelte-1lseh04 {
        display: inline-block;
        width: 16px;
        height: 16px;
        border: 2px solid #ffffff;
        border-radius: 50%;
        border-top-color: transparent;
        animation: svelte-1lseh04-spin 0.8s linear infinite;
    }

    @keyframes svelte-1lseh04-spin {
        to { transform: rotate(360deg); }
    }

    .success-message.svelte-1lseh04 {
        background: #d4edda;
        border: 1px solid #c3e6cb;
        color: #155724;
        padding: 12px;
        border-radius: 5px;
        margin-top: 20px;
    }

    .csv-format-info.svelte-1lseh04 {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 20px;
    }

    .csv-format-info.svelte-1lseh04 h3:where(.svelte-1lseh04) {
        color: #333;
        font-size: 18px;
        margin-bottom: 15px;
    }

    .csv-format-info.svelte-1lseh04 ul:where(.svelte-1lseh04) {
        list-style-type: none;
        padding-left: 0;
    }

    .csv-format-info.svelte-1lseh04 li:where(.svelte-1lseh04) {
        padding: 8px 0;
        color: #495057;
        border-bottom: 1px solid #f0f0f0;
    }

    .csv-format-info.svelte-1lseh04 li:where(.svelte-1lseh04):last-child {
        border-bottom: none;
    }

    .csv-format-info.svelte-1lseh04 code:where(.svelte-1lseh04) {
        background: #f8f9fa;
        padding: 2px 6px;
        border-radius: 3px;
        font-family: 'Courier New', monospace;
        color: #e83e8c;
    }


    .family-manager.svelte-1lgurio {
        max-width: 720px;
        margin: 0 auto;
        padding: 2rem;
        background: white;
        border-radius: 12px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        color: #333;
    }

    .header.svelte-1lgurio {
        text-align: center;
        margin-bottom: 1.5rem;
    }

    .header.svelte-1lgurio h2:where(.svelte-1lgurio) {
        color: #14695b;
        font-size: 1.8rem;
        margin-bottom: 0.25rem;
    }

    .header.svelte-1lgurio p:where(.svelte-1lgurio) {
        color: #666;
        font-size: 1rem;
        margin: 0;
    }

    .panel.svelte-1lgurio {
        border: 1px solid #e9ecef;
        border-radius: 10px;
        padding: 1.25rem;
        margin-bottom: 1.5rem;
    }

    .panel.svelte-1lgurio h3:where(.svelte-1lgurio) {
        margin: 0 0 1rem 0;
        color: #14695b;
        font-size: 1.15rem;
    }

    .count.svelte-1lgurio {
        color: #888;
        font-weight: normal;
        font-size: 0.95rem;
    }

    .form-group.svelte-1lgurio {
        margin-bottom: 1rem;
        position: relative;
    }

    .form-group.svelte-1lgurio label:where(.svelte-1lgurio) {
        display: block;
        font-weight: 600;
        color: #14695b;
        margin-bottom: 0.4rem;
        font-size: 0.95rem;
    }

    .required.svelte-1lgurio {
        color: #dc3545;
    }

    input.svelte-1lgurio {
        width: 100%;
        padding: 0.7rem;
        border: 1px solid #ddd;
        border-radius: 8px;
        font-size: 1rem;
        box-sizing: border-box;
    }

    input.svelte-1lgurio:focus {
        outline: none;
        border-color: #14695b;
        box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.15);
    }

    .user-search-container.svelte-1lgurio {
        position: relative;
    }

    .search-results.svelte-1lgurio {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        border: 1px solid #ddd;
        border-top: none;
        border-radius: 0 0 6px 6px;
        max-height: 240px;
        overflow-y: auto;
        z-index: 1000;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .search-result-item.svelte-1lgurio {
        padding: 0.6rem 0.75rem;
        cursor: pointer;
        border-bottom: 1px solid #f0f0f0;
    }

    .search-result-item.svelte-1lgurio:hover {
        background-color: #f8f9fa;
    }

    .search-result-item.svelte-1lgurio:last-child {
        border-bottom: none;
    }

    .user-info.svelte-1lgurio {
        font-weight: 500;
        color: #333;
        font-size: 0.9rem;
    }

    .user-email.svelte-1lgurio {
        font-size: 0.8rem;
        color: #666;
    }

    .member-warning.svelte-1lgurio {
        font-size: 0.78rem;
        color: #a15c00;
        margin-top: 0.15rem;
    }

    .form-help.svelte-1lgurio {
        font-size: 0.85rem;
        color: #666;
        margin-top: 0.25rem;
    }

    .chips.svelte-1lgurio {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin: 0.5rem 0 1rem 0;
    }

    .chip.svelte-1lgurio {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        background-color: #d1ecf1;
        color: #0c5460;
        padding: 0.35rem 0.6rem;
        border-radius: 16px;
        font-size: 0.88rem;
    }

    .chip-static.svelte-1lgurio {
        background-color: #e8f5e9;
        color: #1b5e20;
    }

    .chip-warning.svelte-1lgurio {
        cursor: help;
    }

    .chip-remove.svelte-1lgurio {
        background: none;
        border: none;
        color: inherit;
        cursor: pointer;
        font-weight: bold;
        font-size: 1rem;
        line-height: 1;
        padding: 0;
    }

    .family-list.svelte-1lgurio {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .family-card.svelte-1lgurio {
        border: 1px solid #eee;
        border-radius: 8px;
        padding: 1rem;
        background: #fafafa;
    }

    .family-head.svelte-1lgurio {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        margin-bottom: 0.5rem;
    }

    .family-name.svelte-1lgurio {
        font-weight: 700;
        color: #14695b;
        font-size: 1.05rem;
    }

    .card-actions.svelte-1lgurio {
        display: flex;
        gap: 0.5rem;
        margin-top: 0.5rem;
    }

    .btn.svelte-1lgurio {
        padding: 0.55rem 1rem;
        border: none;
        border-radius: 8px;
        font-size: 0.95rem;
        font-weight: 600;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }

    .btn.svelte-1lgurio:disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

    .btn-primary.svelte-1lgurio {
        background-color: #14695b;
        color: white;
    }

    .btn-primary.svelte-1lgurio:hover:not(:disabled) {
        background-color: #0f5a4f;
    }

    .btn-secondary.svelte-1lgurio {
        background-color: #e9ecef;
        color: #333;
    }

    .btn-secondary.svelte-1lgurio:hover:not(:disabled) {
        background-color: #dcdfe2;
    }

    .btn-danger.svelte-1lgurio {
        background-color: #dc3545;
        color: white;
    }

    .btn-danger.svelte-1lgurio:hover:not(:disabled) {
        background-color: #bd2130;
    }

    .success-message.svelte-1lgurio {
        background-color: #d4edda;
        color: #155724;
        padding: 0.9rem;
        border-radius: 8px;
        margin-bottom: 1rem;
        border: 1px solid #c3e6cb;
    }

    .error-message.svelte-1lgurio {
        background-color: #f8d7da;
        color: #721c24;
        padding: 0.9rem;
        border-radius: 8px;
        margin-bottom: 1rem;
        border: 1px solid #f5c6cb;
    }

    .muted.svelte-1lgurio {
        color: #777;
        font-size: 0.9rem;
    }


  .card.svelte-1szso12 { box-sizing: border-box; margin: 0; padding: 15px; display: flex; flex-direction: column; gap: 10px; border-radius: 8px; color: #000; background: var(--tint); border-left: 6px solid var(--accent); box-shadow: 0 0 1px #28293d14, 0 .5px 2px #60617029; }
  .widget-header.svelte-1szso12, .widget-actions.svelte-1szso12 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  .widget-header.svelte-1szso12 { justify-content: space-between; }
  .widget-title.svelte-1szso12 { display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 6px 8px; font-size: 14px; font-weight: 800; color: #1f2937; }
  .icon.svelte-1szso12 { width: 18px; display: inline-flex; justify-content: center; font-size: 14px; }
  .button.svelte-1szso12, .dashboard-launch.svelte-1szso12 { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; margin: 0; font: inherit; border-radius: 6px; white-space: nowrap; cursor: pointer; text-decoration: none; }
  .button.svelte-1szso12 { background: #fff; border: 1px solid #ccc; color: #000; }
  .small.svelte-1szso12 { min-height: 36px; padding: 6px 10px; font-size: 12px; }
  .dashboard-launch.svelte-1szso12 { background: #0c131d; border: 1px solid #1b8d68; color: #dce7f3; font-weight: 700; }
  .large.svelte-1szso12 { min-height: 44px; padding: 10px 14px; }
  .launcher-body.svelte-1szso12 { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 8px 4px; }
  p.svelte-1szso12 { margin: 0; line-height: 1.5; color: #475569; }
  a.svelte-1szso12:focus-visible, button.svelte-1szso12:focus-visible { outline: 2px solid #14695b; outline-offset: 3px; }
  @media (max-width: 600px) { .launcher-body.svelte-1szso12 { align-items: stretch; flex-direction: column; } .large.svelte-1szso12 { white-space: normal; text-align: center; } }


  .agreements.svelte-1ss6iy1 { width: 100%; min-width: 0; color: #243833; text-align: left; }
  h2.svelte-1ss6iy1 { color: #14695b; margin-top: 0; }
  h2.svelte-1ss6iy1:focus { outline: none; }
  h3.svelte-1ss6iy1, h4.svelte-1ss6iy1 { margin: .7rem 0; }
  .toolbar.svelte-1ss6iy1 { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; margin: .8rem 0; }
  article.svelte-1ss6iy1 { padding: 1rem; border: 1px solid #d8e2de; border-radius: 12px; margin: 1rem 0; background: #fff; overflow-wrap: anywhere; }
  fieldset.svelte-1ss6iy1 { border: 0; padding: 0; margin: 1rem 0; min-width: 0; }
  label.svelte-1ss6iy1 { display: flex; flex-direction: column; gap: .4rem; margin: .8rem 0; flex: 1; }
  input.svelte-1ss6iy1 { box-sizing: border-box; width: 100%; min-width: 0; padding: .7rem; border: 1px solid #8baca3; border-radius: 6px; font: inherit; }
  .confirm.svelte-1ss6iy1 { flex-direction: row; align-items: flex-start; }
  .confirm.svelte-1ss6iy1 input:where(.svelte-1ss6iy1) { width: auto; flex-shrink: 0; margin-top: .3rem; }
  button.svelte-1ss6iy1 { padding: .65rem .85rem; border: 1px solid #8baca3; border-radius: 7px; background: #fff; color: #14695b; cursor: pointer; font: inherit; }
  button.primary.svelte-1ss6iy1 { background: #14695b; color: white; border-color: #14695b; }
  button.svelte-1ss6iy1:disabled { opacity: .5; cursor: not-allowed; }
  button.svelte-1ss6iy1:focus-visible, input.svelte-1ss6iy1:focus-visible { outline: 3px solid #e4af3a; outline-offset: 2px; }
  li.svelte-1ss6iy1 { margin: .6rem 0; overflow-wrap: anywhere; }
  ul.svelte-1ss6iy1 { padding-left: 1.2rem; }
  .error.svelte-1ss6iy1 { color: #912626; background: #fff0ef; padding: .8rem; border-radius: 6px; }
  .success.svelte-1ss6iy1 { background: #e6f5ed; padding: .8rem; border-radius: 6px; }
  .details.selection-panel.svelte-1ss6iy1 { border: 1px solid #cbdcd4; border-left: 4px solid #14695b; margin: 1.3rem 0 0; padding: 1.1rem; background: #f3f8f5; }
  .assignment-list.svelte-1ss6iy1 { list-style: none; padding: 0; max-height: 380px; overflow-y: auto; border: 1px solid #d8e2de; border-radius: 8px; background: white; }
  .assignment-list.svelte-1ss6iy1 li:where(.svelte-1ss6iy1) { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; padding: .9rem; margin: 0; border-bottom: 1px solid #e2eae5; }
  .assignment-status.svelte-1ss6iy1 { align-self: flex-start; margin-top: .4rem; padding: .25rem .55rem; border-radius: 12px; background: #f2f0e8; font-size: .8rem; }
  .assignment-status.signed.svelte-1ss6iy1 { background: #e1f2e7; color: #14695b; }
  .recipient-filters.svelte-1ss6iy1 { display: flex; flex-wrap: wrap; gap: .5rem; padding: .8rem; border: 1px solid #d8e2de; border-radius: 8px; background: #f3f8f5; }
  .recipient-filters.svelte-1ss6iy1 button:where(.svelte-1ss6iy1) { font-size: .85rem; }
  .recipient-filters.svelte-1ss6iy1 button.active:where(.svelte-1ss6iy1) { color: white; background: #14695b; border-color: #14695b; }
  .document-summary.svelte-1ss6iy1 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; background: #f1f6f4; border: 1px solid #d8e2de; border-radius: 10px; padding: 1rem; margin: 1rem 0 1.5rem; }
  .document-summary.svelte-1ss6iy1 > div:where(.svelte-1ss6iy1) { min-width: 0; flex: 1; overflow-wrap: anywhere; }
  .section-eyebrow.svelte-1ss6iy1 { display: block; font-size: .75rem; color: #58746b; letter-spacing: .04em; margin-bottom: .4rem; }
  .version-badge.svelte-1ss6iy1 { display: inline-block; margin-left: .6rem; font-size: .8rem; padding: .2rem .5rem; border-radius: 20px; background: white; color: #47685c; }
  .selection-panel.svelte-1ss6iy1 { border: 1px solid #d8e2de; border-radius: 12px; padding: 1.1rem; margin-bottom: 1.25rem; background: white; min-width: 0; }
  .panel-heading.svelte-1ss6iy1 { display: flex; flex-wrap: wrap; gap: .7rem; align-items: flex-start; margin-bottom: 1rem; }
  .panel-heading.svelte-1ss6iy1 > div:where(.svelte-1ss6iy1) { flex: 1; min-width: 150px; }
  .panel-heading.svelte-1ss6iy1 h4:where(.svelte-1ss6iy1) { margin: 0 0 .3rem; }
  .panel-heading.svelte-1ss6iy1 p:where(.svelte-1ss6iy1), .hint.svelte-1ss6iy1 { font-size: .85rem; color: #526b62; line-height: 1.55; margin: 0; }
  .section-number.svelte-1ss6iy1 { flex-shrink: 0; display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: 50%; background: #e6f0eb; color: #14695b; font-weight: 600; font-size: .85rem; }
  .candidate-list.svelte-1ss6iy1 { max-height: 360px; overflow-y: auto; border: 1px solid #cbdcd4; border-radius: 8px; margin-top: 1rem; background: #fff; }
  .candidate-row.svelte-1ss6iy1 { display: flex; flex-direction: row; gap: 0; align-items: stretch; margin: 0; border-bottom: 1px solid #e2eae5; cursor: pointer; }
  .candidate-row.svelte-1ss6iy1:last-child { border-bottom: 0; }
  .candidate-row.svelte-1ss6iy1:hover { background: #f3f8f5; }
  .candidate-row.checked.svelte-1ss6iy1 { background: #eaf5ef; }
  .checkbox-cell.svelte-1ss6iy1 { display: flex; align-items: center; justify-content: center; flex: 0 0 48px; border-right: 1px solid #e0e9e3; background: #f7faf8; }
  .checkbox-cell.svelte-1ss6iy1 input:where(.svelte-1ss6iy1), .confirm.svelte-1ss6iy1 input:where(.svelte-1ss6iy1) { width: 18px; height: 18px; padding: 0; accent-color: #14695b; }
  .student-info.svelte-1ss6iy1 { display: flex; flex-direction: column; gap: .15rem; flex: 1; min-width: 0; overflow-wrap: anywhere; }
  .candidate-row.svelte-1ss6iy1 .student-info:where(.svelte-1ss6iy1) { padding: .8rem; }
  .student-meta.svelte-1ss6iy1 { color: #587168; font-size: .85rem; }
  .empty-selection.svelte-1ss6iy1 { padding: 1.2rem .7rem; color: #687b72; text-align: center; font-size: .85rem; margin: 0; }
  .picker-pagination.svelte-1ss6iy1 { justify-content: space-between; font-size: .8rem; margin-bottom: 0; }
  .selected-panel.svelte-1ss6iy1 { background: #f6faf8; }
  .selected-count.svelte-1ss6iy1 { background: #e1eee7; color: #14695b; padding: .35rem .6rem; border-radius: 20px; font-size: .8rem; white-space: nowrap; }
  .selected-list.svelte-1ss6iy1 { list-style: none; padding: 0; margin: 0; max-height: 360px; overflow-y: auto; }
  .selected-list.svelte-1ss6iy1 li:where(.svelte-1ss6iy1) { display: flex; align-items: center; gap: .75rem; margin: .5rem 0 0; padding: .7rem .8rem; background: #fff; border: 1px solid #dce8e1; border-radius: 8px; }
  .remove-student.svelte-1ss6iy1 { font-size: .8rem; padding: .4rem .6rem; }
  .confirmation-panel.svelte-1ss6iy1 { background: #fffaf0; border-color: #e9d9b5; }
  .confirmation-panel.svelte-1ss6iy1 .section-number:where(.svelte-1ss6iy1) { background: #f8e9ca; color: #7a5b23; }
  .confirmation-panel.svelte-1ss6iy1 .confirm:where(.svelte-1ss6iy1) { background: white; border: 1px solid #e7ddc9; border-radius: 8px; padding: .8rem; gap: .75rem; line-height: 1.55; }
  .confirmation-panel.svelte-1ss6iy1 .primary:where(.svelte-1ss6iy1) { margin-top: 1rem; }
  @media (max-width: 600px) { .toolbar.svelte-1ss6iy1 > button:where(.svelte-1ss6iy1) { flex: 1 1 auto; } article.svelte-1ss6iy1 { padding: .75rem; } }


    .tab-navigation.svelte-1edsooj {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .tab-button.svelte-1edsooj {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 10px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 14px;
        color: #222;
        text-decoration: none;
    }

    .dashboard-link.svelte-1edsooj {
        background: #0c131d;
        border-color: #1b8d68;
        color: #dce7f3;
    }

    .tab-button.active.svelte-1edsooj {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .classcontainer.svelte-1edsooj {
        padding: 15px;
        background-color: white;
        display: flex;
        flex-direction: column;
        margin-bottom: 15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color: black;
        align-items: flex-start;
    }

    .classcontainer.svelte-1edsooj h3:where(.svelte-1edsooj) {
        margin: 0 0 15px 0;
        color: #333;
    }

    /* Override nested component styles for cleaner integration */
    .classcontainer .admin-create-user {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .teacher-finder {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .find-students-comments {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .refresh-database {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .manual-payment-container {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }

    .classcontainer .pricing-modifier-container {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }

    .classcontainer .family-manager {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }


    label.svelte-1cpgdox{
        padding: 3px;
        font-weight: bold;
        margin-bottom: 20px;
        font-size: larger;
        display: block;
    }
    h1.svelte-1cpgdox{
        text-align: center;
    }
     button.svelte-1cpgdox span:where(.svelte-1cpgdox) {
        font-weight: bolder;
        font-size:larger;
    }

    button.svelte-1cpgdox {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 12px 20px;
        gap: 10px;

        width: 100%;
        height: 60px;

        /* Purple background */
        background-color: white;

        /* Black border */
        border: 1px solid #000000;

        /* Box shadow */
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

        /* Rounded corners */
        border-radius: 8px;

        /* Inside auto layout */
        flex: none;
        order: 0;
        align-self: stretch;
        flex-grow: 0;

        /* Remove default button styling */
        outline: none;
        cursor: pointer;

        /* Remove the default button background on focus */
        background-image: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* Button hover effect */
    button.svelte-1cpgdox:hover {
        background-color: #14695b;
        color:white;
    }


    /* Text inside the button */
    span.svelte-1cpgdox {
        font-size: 1rem;
        font-weight: bold;
        color: #000000;
    }
    .error.svelte-1cpgdox {
        color: red;
    }
    main.svelte-1cpgdox{
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .classcontainer.svelte-1cpgdox {
      padding: 15px;
      background-color: white;
      display: flex;
      max-width:400px;
      flex-direction: column;
      margin-bottom: 15px;
      gap: 10px;
      box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
      border-radius: 8px;
      color: black;
      align-items: flex-start;
    }
    .terms-label.svelte-1cpgdox {
        display: flex;
        align-items: center;
        font-size: 1rem;
        margin-bottom: 10px;
        gap: 8px;
        font-weight: bold;
        /* Ensure children are vertically centered */
        line-height: 1.2;
    }
    .terms-label.svelte-1cpgdox a:where(.svelte-1cpgdox) {
        color: #14695b;
        text-decoration: underline;
        cursor: pointer;
    }
    .terms-checkbox.svelte-1cpgdox {
        margin-right: 6px;
        /* Remove default vertical-align, use flex alignment */
    }


 /* Base button styles */
 button.svelte-q7vdvn {
   padding: 0.5rem 1rem;
   font-size: 1rem;
   background-color: #fab45a;
   color: black;
   border: none;
   border-radius: 4px;
   cursor: pointer;
   transition: background-color 0.3s ease;
   margin-top: 0.5rem;
 }

 /* Disabled button styles */
 button.svelte-q7vdvn:disabled {
   background-color: #6c757d;
   cursor: not-allowed;
 }

 /* Error message styling */
 .error.svelte-q7vdvn {
   color: red;
   margin-top: 0.5rem;
 }

 /* Success message styling */
 .success.svelte-q7vdvn {
   color: green;
   margin-top: 0.5rem;
 }

 /* Input disabled styles */
 input.svelte-q7vdvn:disabled {
   background-color: #e9ecef;
 }
 .text_input.svelte-q7vdvn{
    width:100%;
  }




  /* Header styling matching AdminCreateUserComponent */
  .labelDiv.svelte-jq7gfr {
    display: flex;
    justify-content: space-around;
    margin-bottom: 2rem;
  }
  .labelDiv.svelte-jq7gfr span:where(.svelte-jq7gfr) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #333;
  }

  /* Loading and empty states */
  .loading-message.svelte-jq7gfr, .empty-message.svelte-jq7gfr {
    text-align: center;
    padding: 2rem;
    color: #666;
    font-style: italic;
  }

  /* Date group styling */
  .date-group.svelte-jq7gfr {
    margin-bottom: 2rem;
  }
  .date-header.svelte-jq7gfr {
    font-size: 1.1rem;
    font-weight: bold;
    color: #0055aa;
    border-bottom: 2px solid #0055aa;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
  }

  /* Request card styling */
  .request-card.svelte-jq7gfr {
    border: 1px solid #ccc;
    border-radius: 8px;
    margin-bottom: 1rem;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s ease;
  }
  .request-card.svelte-jq7gfr:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  }
  /* Responsibility incident styling - red background */
  .request-card.responsibility-incident.svelte-jq7gfr {
    background: #ffe6e6;
    border-color: #ffcccc;
  }
  .request-card.responsibility-incident.svelte-jq7gfr:hover {
    box-shadow: 0 4px 8px rgba(220, 53, 69, 0.2);
  }

  /* Summary button styling */
  .request-summary.svelte-jq7gfr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    border: none;
    background: #fff;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.2s ease;
    font-size: 1rem;
  }
  .request-summary.svelte-jq7gfr:hover {
    background-color: #f8f9fa;
  }

  /* Status-based coloring */
  .request-summary.pending.svelte-jq7gfr {
    border-left: 4px solid #ffc107;
  }
  .request-summary.accepted.svelte-jq7gfr {
    border-left: 4px solid #28a745;
  }
  .request-summary.denied.svelte-jq7gfr {
    border-left: 4px solid #dc3545;
  }

  /* Summary content layout */
  .summary-content.svelte-jq7gfr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    margin-right: 1rem;
  }
  .summary-main.svelte-jq7gfr {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .student-name.svelte-jq7gfr {
    font-weight: bold;
    color: #333;
    font-size: 1rem;
  }
  .teacher-name.svelte-jq7gfr {
    color: #666;
    font-size: 0.9rem;
  }
  .agreed-upon-badge.svelte-jq7gfr {
    color: #28a745;
    font-size: 0.8rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }
  .request-type-badge.svelte-jq7gfr {
    font-size: 0.8rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }
  .cancel-badge.svelte-jq7gfr {
    color: #dc3545;
  }
  .same-day-cancel-badge.svelte-jq7gfr {
    color: #8b0000;
    font-weight: bold;
  }

  /* Status badge */
  .status-badge.svelte-jq7gfr {
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  .status-pending.svelte-jq7gfr {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
  }
  .status-accepted.svelte-jq7gfr {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
  }
  .status-denied.svelte-jq7gfr {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
  }

  /* Expand icon */
  .expand-icon.svelte-jq7gfr {
    color: #0055aa;
    font-size: 0.8rem;
    transition: transform 0.2s ease;
  }

  /* Details section */
  .request-details.svelte-jq7gfr {
    padding: 1.5rem;
    background-color: #f8f9fa;
    border-top: 1px solid #e9ecef;
  }
  .details-grid.svelte-jq7gfr {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }
  .detail-item.svelte-jq7gfr {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .detail-item.full-width.svelte-jq7gfr {
    grid-column: 1 / -1;
  }
  .detail-label.svelte-jq7gfr {
    font-weight: bold;
    color: #0055aa;
    font-size: 0.9rem;
  }
  .detail-value.svelte-jq7gfr {
    color: #333;
    font-size: 1rem;
    padding: 0.4rem;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
  }
  .reason-text.svelte-jq7gfr {
    min-height: 3rem;
    resize: none;
    font-family: inherit;
  }

  /* Admin action buttons */
  .admin-actions.svelte-jq7gfr {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
  }

  .action-button.svelte-jq7gfr {
    padding: 0.8rem 1.5rem;
    border: none;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .confirm-button.svelte-jq7gfr {
    background-color: #28a745;
    color: white;
  }

  .confirm-button.svelte-jq7gfr:hover {
    background-color: #218838;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(40, 167, 69, 0.3);
  }

  .deny-button.svelte-jq7gfr {
    background-color: #dc3545;
    color: white;
  }

  .deny-button.svelte-jq7gfr:hover {
    background-color: #c82333;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
  }

  .action-button.svelte-jq7gfr:active {
    transform: translateY(0);
  }

  /* Show All button styling */
  .show-all-container.svelte-jq7gfr {
    text-align: center;
    margin: 2rem 0;
    padding: 1rem;
  }

  .show-all-button.svelte-jq7gfr {
    padding: 0.8rem 2rem;
    background-color: #0055aa;
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1rem;
    box-shadow: 0 2px 4px rgba(0, 85, 170, 0.2);
  }

  .show-all-button.svelte-jq7gfr:hover {
    background-color: #004494;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 85, 170, 0.3);
  }

  .show-all-button.svelte-jq7gfr:active {
    transform: translateY(0);
  }

  /* Section headers */
  .section-header.svelte-jq7gfr {
    font-size: 1.3rem;
    font-weight: bold;
    color: #0055aa;
    margin: 2rem 0 1rem 0;
    padding: 0.5rem 0;
    border-bottom: 3px solid #0055aa;
    text-transform: uppercase;
    letter-spacing: 1px;
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {
    .details-grid.svelte-jq7gfr {
      grid-template-columns: 1fr;
    }
    .summary-content.svelte-jq7gfr {
      flex-direction: column;
      align-items: flex-start;
      gap: 0.5rem;
    }
    .status-badge.svelte-jq7gfr {
      align-self: flex-end;
    }
    .admin-actions.svelte-jq7gfr {
      flex-direction: column;
      gap: 0.5rem;
    }
    .action-button.svelte-jq7gfr {
      justify-content: center;
    }
  }


  /* Header styling matching AdminCreateUserComponent */
  .labelDiv.svelte-12k9bk {
    display: flex;
    justify-content: space-around;
    margin-bottom: 2rem;
  }
  .labelDiv.svelte-12k9bk span:where(.svelte-12k9bk) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #333;
  }

  /* Loading and empty states */
  .loading-message.svelte-12k9bk, .empty-message.svelte-12k9bk {
    text-align: center;
    padding: 2rem;
    color: #666;
    font-style: italic;
  }

  /* Date group styling */
  .date-group.svelte-12k9bk {
    margin-bottom: 2rem;
  }
  .date-header.svelte-12k9bk {
    font-size: 1.1rem;
    font-weight: bold;
    color: #0055aa;
    border-bottom: 2px solid #0055aa;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
  }

  /* Section headers */
  .section-header.svelte-12k9bk {
    margin: 2rem 0 1rem 0;
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
  }
  .section-header.svelte-12k9bk h2:where(.svelte-12k9bk) {
    margin: 0 0 0.5rem 0;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .section-header.svelte-12k9bk p:where(.svelte-12k9bk) {
    margin: 0;
    font-size: 0.95rem;
    opacity: 0.8;
  }
  .unhandled-section.svelte-12k9bk {
    background: linear-gradient(135deg, #fff3cd 0%, #fff8dc 100%);
    border: 1px solid #ffeaa7;
    color: #856404;
  }

  /* Handled requests section */
  .handled-section-container.svelte-12k9bk {
    margin-top: 3rem;
    border-top: 2px solid #e9ecef;
    padding-top: 2rem;
  }
  .handled-section-toggle.svelte-12k9bk {
    width: 100%;
    padding: 1rem 1.5rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 1px solid #dee2e6;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    transition: all 0.2s ease;
  }
  .handled-section-toggle.svelte-12k9bk:hover {
    background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
  .toggle-text.svelte-12k9bk {
    font-size: 1.1rem;
    font-weight: bold;
    color: #495057;
  }
  .toggle-subtitle.svelte-12k9bk {
    font-size: 0.9rem;
    color: #6c757d;
    font-style: italic;
  }
  .handled-requests-content.svelte-12k9bk {
    margin-top: 1rem;
  }

  /* Handled request styling differences */
  .handled-date-group.svelte-12k9bk {
    opacity: 0.85;
  }
  .handled-date-header.svelte-12k9bk {
    color: #6c757d !important;
    border-bottom-color: #6c757d !important;
  }
  .handled-card.svelte-12k9bk {
    opacity: 0.9;
  }

  /* Request card styling */
  .request-card.svelte-12k9bk {
    border: 1px solid #ccc;
    border-radius: 8px;
    margin-bottom: 1rem;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s ease;
  }
  .request-card.svelte-12k9bk:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  }

  /* Summary button styling */
  .request-summary.svelte-12k9bk {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    border: none;
    background: #fff;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.2s ease;
    font-size: 1rem;
  }
  .request-summary.svelte-12k9bk:hover {
    background-color: #f8f9fa;
  }

  /* Status-based coloring */
  .request-summary.unhandled.svelte-12k9bk {
    border-left: 4px solid #ffc107;
  }
  .request-summary.handled.svelte-12k9bk {
    border-left: 4px solid #28a745;
  }

  /* Summary content layout */
  .summary-content.svelte-12k9bk {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    margin-right: 1rem;
  }
  .summary-main.svelte-12k9bk {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .student-name.svelte-12k9bk {
    font-weight: bold;
    color: #333;
    font-size: 1rem;
  }
  .subject-info.svelte-12k9bk {
    color: #666;
    font-size: 0.9rem;
  }

  /* Status badges container */
  .status-badges.svelte-12k9bk {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-end;
  }

  /* Status badge */
  .status-badge.svelte-12k9bk {
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  .status-unhandled.svelte-12k9bk {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
  }
  .status-handled.svelte-12k9bk {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
  }

  /* Acceptance badge */
  .acceptance-badge.svelte-12k9bk {
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  .acceptance-accepted.svelte-12k9bk {
    background-color: #e8f5e8;
    color: #2e7d32;
    border: 1px solid #c8e6c9;
  }
  .acceptance-not-accepted.svelte-12k9bk {
    background-color: #fff3e0;
    color: #ef6c00;
    border: 1px solid #ffcc02;
  }

  /* Display badge */
  .display-badge.svelte-12k9bk {
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  .display-visible.svelte-12k9bk {
    background-color: #e1f5fe;
    color: #01579b;
    border: 1px solid #b3e5fc;
  }
  .display-hidden.svelte-12k9bk {
    background-color: #ffebee;
    color: #c62828;
    border: 1px solid #ffcdd2;
  }

  /* Expand icon */
  .expand-icon.svelte-12k9bk {
    color: #0055aa;
    font-size: 0.8rem;
    transition: transform 0.2s ease;
  }

  /* Details section */
  .request-details.svelte-12k9bk {
    padding: 1.5rem;
    background-color: #f8f9fa;
    border-top: 1px solid #e9ecef;
  }
  .details-grid.svelte-12k9bk {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }
  .detail-item.svelte-12k9bk {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .detail-item.full-width.svelte-12k9bk {
    grid-column: 1 / -1;
  }
  .detail-label.svelte-12k9bk {
    font-weight: bold;
    color: #0055aa;
    font-size: 0.9rem;
  }
  .detail-value.svelte-12k9bk {
    color: #333;
    font-size: 1rem;
    padding: 0.4rem;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
  }
  .topic-text.svelte-12k9bk {
    min-height: 3rem;
    resize: none;
    font-family: inherit;
  }

  /* Admin action buttons */
  .admin-actions.svelte-12k9bk {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
    flex-wrap: wrap;
  }

  .action-button.svelte-12k9bk {
    padding: 0.8rem 1.5rem;
    border: none;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .handled-button.svelte-12k9bk {
    background-color: #28a745;
    color: white;
  }

  .handled-button.svelte-12k9bk:hover {
    background-color: #218838;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(40, 167, 69, 0.3);
  }

  .unhandled-button.svelte-12k9bk {
    background-color: #dc3545;
    color: white;
  }

  .unhandled-button.svelte-12k9bk:hover {
    background-color: #c82333;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
  }

  .show-button.svelte-12k9bk {
    background-color: #17a2b8;
    color: white;
  }

  .show-button.svelte-12k9bk:hover {
    background-color: #138496;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(23, 162, 184, 0.3);
  }

  .hide-button.svelte-12k9bk {
    background-color: #6c757d;
    color: white;
  }

  .hide-button.svelte-12k9bk:hover {
    background-color: #5a6268;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(108, 117, 125, 0.3);
  }

  .action-button.svelte-12k9bk:active {
    transform: translateY(0);
  }

  /* Teacher accepted info styling */
  .teacher-accepted-info.svelte-12k9bk {
    background: #d4edda;
    color: #155724;
    padding: 0.8rem;
    border-radius: 6px;
    border: 1px solid #c3e6cb;
    font-size: 0.9rem;
    line-height: 1.4;
  }

  .teacher-accepted-info.svelte-12k9bk strong:where(.svelte-12k9bk) {
    font-weight: 600;
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {
    .details-grid.svelte-12k9bk {
      grid-template-columns: 1fr;
    }
    .summary-content.svelte-12k9bk {
      flex-direction: column;
      align-items: flex-start;
      gap: 0.5rem;
    }
    .status-badges.svelte-12k9bk {
      align-self: flex-end;
    }
    .admin-actions.svelte-12k9bk {
      flex-direction: column;
      gap: 0.5rem;
    }
    .action-button.svelte-12k9bk {
      justify-content: center;
    }
  }


    .admin-registration-form.svelte-1k0tfyu {
        max-width: 800px;
        margin: 0 auto;
        padding: 2rem;
        background: #fff;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .form-header.svelte-1k0tfyu {
        text-align: center;
        margin-bottom: 2rem;
        padding-bottom: 1rem;
        border-bottom: 2px solid #e9ecef;
    }

    .form-header.svelte-1k0tfyu h2:where(.svelte-1k0tfyu) {
        color: #2c3e50;
        margin: 0 0 0.5rem 0;
        font-size: 1.8rem;
        font-weight: 600;
    }

    .form-description.svelte-1k0tfyu {
        color: #6c757d;
        font-size: 1rem;
        margin: 0;
    }

    .form-section.svelte-1k0tfyu {
        margin-bottom: 2rem;
        padding: 1.5rem;
        background: #f8f9fa;
        border-radius: 6px;
        border-left: 4px solid #007bff;
    }

    .form-section.svelte-1k0tfyu h3:where(.svelte-1k0tfyu) {
        color: #495057;
        margin: 0 0 1.5rem 0;
        font-size: 1.2rem;
        font-weight: 600;
    }

    /* Mode Selection Styles */
    .mode-selection.svelte-1k0tfyu {
        margin-bottom: 1.5rem;
        padding: 1rem;
        background: #fff;
        border-radius: 6px;
        border: 1px solid #dee2e6;
    }

    .mode-options.svelte-1k0tfyu {
        display: flex;
        gap: 2rem;
    }

    .mode-option.svelte-1k0tfyu {
        display: flex;
        align-items: center;
        cursor: pointer;
        font-size: 1rem;
        color: #495057;
    }

    .mode-option.svelte-1k0tfyu input[type="radio"]:where(.svelte-1k0tfyu) {
        margin-right: 0.5rem;
        transform: scale(1.2);
        cursor: pointer;
    }

    .mode-option.svelte-1k0tfyu span:where(.svelte-1k0tfyu) {
        user-select: none;
    }

    /* User Search Styles */
    .user-search-section.svelte-1k0tfyu {
        margin-top: 1rem;
    }

    .search-input-container.svelte-1k0tfyu {
        position: relative;
        margin-bottom: 1rem;
    }

    .search-input.svelte-1k0tfyu {
        width: 100%;
        padding: 12px 16px;
        border: 2px solid #dee2e6;
        border-radius: 6px;
        font-size: 1rem;
        box-sizing: border-box;
        transition: border-color 0.2s ease;
    }

    .search-input.svelte-1k0tfyu:focus {
        outline: none;
        border-color: #007bff;
    }

    .search-input.svelte-1k0tfyu:disabled {
        background-color: #f8f9fa;
        cursor: not-allowed;
    }

    .search-spinner.svelte-1k0tfyu {
        position: absolute;
        right: 12px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 16px;
        animation: svelte-1k0tfyu-spin 1s linear infinite;
    }

    @keyframes svelte-1k0tfyu-spin {
        from { transform: translateY(-50%) rotate(0deg); }
        to { transform: translateY(-50%) rotate(360deg); }
    }

    .search-results.svelte-1k0tfyu {
        border: 1px solid #dee2e6;
        border-radius: 6px;
        max-height: 250px;
        overflow-y: auto;
        background: white;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        margin-bottom: 1rem;
    }

    .search-result-item.svelte-1k0tfyu {
        padding: 12px 16px;
        border-bottom: 1px solid #eee;
        cursor: pointer;
        transition: background-color 0.2s ease;
        outline: none;
    }

    .search-result-item.svelte-1k0tfyu:hover,
    .search-result-item.svelte-1k0tfyu:focus {
        background-color: #f8f9fa;
    }

    .search-result-item.svelte-1k0tfyu:focus {
        box-shadow: inset 0 0 0 2px #007bff;
    }

    .search-result-item.svelte-1k0tfyu:last-child {
        border-bottom: none;
    }

    .student-info.svelte-1k0tfyu {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .student-name.svelte-1k0tfyu {
        font-weight: 600;
        color: #212529;
        font-size: 1rem;
    }

    .student-details.svelte-1k0tfyu {
        color: #6c757d;
        font-size: 0.9rem;
    }

    .no-results.svelte-1k0tfyu {
        padding: 16px;
        text-align: center;
        color: #6c757d;
        font-style: italic;
        background: #f8f9fa;
        border: 1px solid #dee2e6;
        border-radius: 6px;
        margin-bottom: 1rem;
    }

    .selected-user-display.svelte-1k0tfyu {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 16px;
        background: #e3f2fd;
        border: 1px solid #2196f3;
        border-radius: 6px;
        margin-bottom: 1rem;
    }

    .selected-user-info.svelte-1k0tfyu {
        flex: 1;
    }

    .change-user-button.svelte-1k0tfyu {
        background: #007bff;
        color: white;
        border: none;
        padding: 8px 16px;
        border-radius: 4px;
        cursor: pointer;
        font-size: 0.9rem;
        font-weight: 500;
        transition: background-color 0.2s ease;
    }

    .change-user-button.svelte-1k0tfyu:hover {
        background: #0056b3;
    }

    .custom-student-section.svelte-1k0tfyu {
        margin-top: 1rem;
    }

    .form-actions.svelte-1k0tfyu {
        display: flex;
        gap: 1rem;
        justify-content: flex-end;
        margin-top: 2rem;
        padding-top: 1.5rem;
        border-top: 1px solid #e9ecef;
    }

    .submitButton.svelte-1k0tfyu, .resetButton.svelte-1k0tfyu {
        padding: 12px 24px;
        border-radius: 6px;
        border: none;
        font-weight: 600;
        font-size: 1rem;
        cursor: pointer;
        transition: all 0.2s ease;
        min-width: 150px;
    }

    .submitButton.svelte-1k0tfyu {
        background-color: #28a745;
        color: white;
    }

    .submitButton.svelte-1k0tfyu:hover {
        background-color: #218838;
        transform: translateY(-1px);
        box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
    }

    .resetButton.svelte-1k0tfyu {
        background-color: #6c757d;
        color: white;
    }

    .resetButton.svelte-1k0tfyu:hover {
        background-color: #5a6268;
        transform: translateY(-1px);
        box-shadow: 0 4px 8px rgba(108, 117, 125, 0.3);
    }

    .addDatetime.svelte-1k0tfyu {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 40px;
        background-color: #007bff;
        color: white;
        border: none;
        border-radius: 6px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
        margin-top: 1rem;
        width: 100%;
    }

    .addDatetime.svelte-1k0tfyu:hover {
        background-color: #0056b3;
        transform: translateY(-1px);
    }

    /* Notification Styles */
    .notification.svelte-1k0tfyu {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        padding: 16px;
        animation: svelte-1k0tfyu-slideDown 0.3s ease-out;
    }

    .success-notification.svelte-1k0tfyu {
        background-color: #d4edda;
        border-bottom: 3px solid #28a745;
        color: #155724;
    }

    .notification-content.svelte-1k0tfyu {
        display: flex;
        align-items: center;
        max-width: 1200px;
        margin: 0 auto;
        gap: 12px;
    }

    .notification-icon.svelte-1k0tfyu {
        font-size: 24px;
        font-weight: bold;
        color: #28a745;
        background-color: white;
        border-radius: 50%;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .notification-text.svelte-1k0tfyu {
        flex: 1;
    }

    .notification-text.svelte-1k0tfyu strong:where(.svelte-1k0tfyu) {
        display: block;
        font-size: 16px;
        margin-bottom: 4px;
    }

    .notification-text.svelte-1k0tfyu p:where(.svelte-1k0tfyu) {
        margin: 0;
        font-size: 14px;
        opacity: 0.9;
    }

    .close-notification.svelte-1k0tfyu {
        background: none;
        border: none;
        font-size: 24px;
        font-weight: bold;
        cursor: pointer;
        color: #155724;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
        transition: background-color 0.2s ease;
        margin: 0;
        padding: 0;
        flex-shrink: 0;
    }

    .close-notification.svelte-1k0tfyu:hover {
        background-color: rgba(21, 87, 36, 0.1);
    }

    /* Error Message Styles */
    .error-message.svelte-1k0tfyu {
        background-color: #f8d7da;
        color: #721c24;
        border: 1px solid #f5c6cb;
        border-radius: 6px;
        padding: 12px 16px;
        margin-bottom: 1rem;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .error-icon.svelte-1k0tfyu {
        font-size: 18px;
        color: #dc3545;
        flex-shrink: 0;
    }

    .close-error.svelte-1k0tfyu {
        background: none;
        border: none;
        font-size: 18px;
        font-weight: bold;
        cursor: pointer;
        color: #721c24;
        margin-left: auto;
        padding: 0;
        width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 2px;
        transition: background-color 0.2s ease;
    }

    .close-error.svelte-1k0tfyu:hover {
        background-color: rgba(114, 28, 36, 0.1);
    }

    @keyframes svelte-1k0tfyu-slideDown {
        from {
            transform: translateY(-100%);
            opacity: 0;
        }
        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    /* Responsive Design */
    @media (max-width: 768px) {
        .admin-registration-form.svelte-1k0tfyu {
            margin: 1rem;
            padding: 1rem;
        }

        .form-actions.svelte-1k0tfyu {
            flex-direction: column;
        }

        .submitButton.svelte-1k0tfyu, .resetButton.svelte-1k0tfyu {
            width: 100%;
        }
    }


    .send-weekly-sms-container.svelte-n4gjms {
        max-width: 800px;
        margin: 0 auto;
        padding: 20px;
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    }

    .header.svelte-n4gjms {
        text-align: center;
        margin-bottom: 30px;
    }

    .header.svelte-n4gjms h2:where(.svelte-n4gjms) {
        color: #333;
        margin-bottom: 10px;
    }

    .header.svelte-n4gjms p:where(.svelte-n4gjms) {
        color: #666;
        font-size: 14px;
    }

    .week-selection.svelte-n4gjms {
        margin-bottom: 25px;
        padding: 15px;
        background: #f8f9fa;
        border-radius: 8px;
        border: 1px solid #dee2e6;
    }

    .checkbox-container.svelte-n4gjms {
        display: flex;
        align-items: center;
        cursor: pointer;
        font-size: 16px;
        color: #333;
        user-select: none;
    }

    .checkbox-container.svelte-n4gjms input[type="checkbox"]:where(.svelte-n4gjms) {
        margin-right: 10px;
        transform: scale(1.2);
        cursor: pointer;
    }

    .search-section.svelte-n4gjms {
        margin-bottom: 30px;
    }

    .search-input-container.svelte-n4gjms {
        position: relative;
        margin-bottom: 15px;
    }

    .search-input.svelte-n4gjms {
        width: 100%;
        padding: 15px;
        border: 2px solid #ddd;
        border-radius: 8px;
        font-size: 16px;
        box-sizing: border-box;
    }

    .search-input.svelte-n4gjms:focus {
        outline: none;
        border-color: #007bff;
    }

    .search-spinner.svelte-n4gjms {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 18px;
    }

    .search-results.svelte-n4gjms {
        border: 1px solid #ddd;
        border-radius: 8px;
        max-height: 300px;
        overflow-y: auto;
        background: white;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    }

    .search-result-item.svelte-n4gjms {
        padding: 15px;
        border-bottom: 1px solid #eee;
        cursor: pointer;
        transition: background-color 0.2s;
        outline: none;
    }

    .search-result-item.svelte-n4gjms:hover,
    .search-result-item.svelte-n4gjms:focus {
        background-color: #f5f5f5;
    }

    .search-result-item.svelte-n4gjms:focus {
        box-shadow: 0 0 0 2px #007bff;
    }

    .search-result-item.svelte-n4gjms:last-child {
        border-bottom: none;
    }

    .student-info.svelte-n4gjms {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }

    .student-name.svelte-n4gjms {
        font-weight: bold;
        color: #333;
    }

    .student-details.svelte-n4gjms {
        color: #666;
        font-size: 14px;
    }

    .student-phone.svelte-n4gjms {
        color: #007bff;
        font-size: 14px;
    }

    .student-phone.no-phone.svelte-n4gjms {
        color: #dc3545;
    }

    .no-results.svelte-n4gjms {
        padding: 20px;
        text-align: center;
        color: #666;
        font-style: italic;
    }

    .selected-student-section.svelte-n4gjms {
        background: #f8f9fa;
        border-radius: 12px;
        padding: 20px;
        margin-bottom: 20px;
    }

    .selected-student-header.svelte-n4gjms {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 1px solid #dee2e6;
    }

    .student-card.svelte-n4gjms {
        flex: 1;
    }

    .clear-button.svelte-n4gjms {
        background: #6c757d;
        color: white;
        border: none;
        padding: 8px 16px;
        border-radius: 6px;
        cursor: pointer;
        font-size: 14px;
    }

    .clear-button.svelte-n4gjms:hover {
        background: #5a6268;
    }

    .loading.svelte-n4gjms {
        text-align: center;
        padding: 40px;
        color: #666;
        font-style: italic;
    }

    .schedule-preview.svelte-n4gjms h3:where(.svelte-n4gjms) {
        color: #333;
        margin-bottom: 15px;
    }

    .classes-list.svelte-n4gjms {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-bottom: 25px;
    }

    .class-item.svelte-n4gjms {
        background: white;
        padding: 15px;
        border-radius: 8px;
        border: 1px solid #dee2e6;
    }

    .class-day-time.svelte-n4gjms {
        font-weight: bold;
        color: #007bff;
        margin-bottom: 5px;
    }

    .class-subject.svelte-n4gjms {
        font-size: 16px;
        color: #333;
        margin-bottom: 5px;
    }

    .class-teacher.svelte-n4gjms {
        font-size: 14px;
        color: #666;
    }

    .message-preview-section.svelte-n4gjms {
        margin-bottom: 25px;
    }

    .message-preview-section.svelte-n4gjms h4:where(.svelte-n4gjms) {
        color: #333;
        margin-bottom: 10px;
    }

    .message-preview.svelte-n4gjms {
        background: white;
        padding: 15px;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        white-space: pre-line;
        font-family: monospace;
        font-size: 14px;
        color: #333;
        line-height: 1.4;
    }

    .send-section.svelte-n4gjms {
        text-align: center;
    }

    .send-button.svelte-n4gjms {
        background: #28a745;
        color: white;
        border: none;
        padding: 15px 30px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: bold;
        cursor: pointer;
        transition: background-color 0.2s;
    }

    .send-button.svelte-n4gjms:hover:not(:disabled) {
        background: #218838;
    }

    .send-button.svelte-n4gjms:disabled {
        background: #6c757d;
        cursor: not-allowed;
    }

    .no-phone-warning.svelte-n4gjms {
        background: #f8d7da;
        color: #721c24;
        padding: 15px;
        border-radius: 8px;
        border: 1px solid #f5c6cb;
        text-align: center;
        font-weight: bold;
    }

    .no-classes.svelte-n4gjms {
        text-align: center;
        padding: 40px;
    }

    .no-classes.svelte-n4gjms h3:where(.svelte-n4gjms) {
        color: #666;
        margin-bottom: 10px;
    }

    .no-classes.svelte-n4gjms p:where(.svelte-n4gjms) {
        color: #999;
        font-style: italic;
    }

    .success-message.svelte-n4gjms {
        background: #d4edda;
        color: #155724;
        padding: 15px;
        border-radius: 8px;
        border: 1px solid #c3e6cb;
        margin-top: 20px;
        text-align: center;
        font-weight: bold;
    }

    .error-message.svelte-n4gjms {
        background: #f8d7da;
        color: #721c24;
        padding: 15px;
        border-radius: 8px;
        border: 1px solid #f5c6cb;
        margin-top: 20px;
        text-align: center;
        font-weight: bold;
    }


    .select-users-email-container.svelte-1pxo7fm {
        max-width: 800px;
        margin: 0 auto;
        padding: 20px;
    }

    .filter-buttons.svelte-1pxo7fm {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .filter-btn.svelte-1pxo7fm {
        padding: 8px 16px;
        border: 1px solid #ddd;
        background: white;
        cursor: pointer;
        border-radius: 6px;
        font-size: 14px;
        transition: all 0.2s ease;
    }

    .filter-btn.active.svelte-1pxo7fm {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .filter-btn.svelte-1pxo7fm:hover:not(.active) {
        background: #f5f5f5;
    }

    .search-container.svelte-1pxo7fm {
        margin-bottom: 15px;
    }

    .search-input.svelte-1pxo7fm {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
    }

    .selection-controls.svelte-1pxo7fm {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .selection-btn.svelte-1pxo7fm {
        padding: 6px 12px;
        border: 1px solid #007bff;
        background: white;
        color: #007bff;
        cursor: pointer;
        border-radius: 4px;
        font-size: 13px;
        transition: all 0.2s ease;
    }

    .selection-btn.svelte-1pxo7fm:hover {
        background: #007bff;
        color: white;
    }

    .selected-count.svelte-1pxo7fm {
        font-weight: bold;
        color: #555;
        margin-left: auto;
    }

    .loading.svelte-1pxo7fm, .no-users.svelte-1pxo7fm {
        text-align: center;
        padding: 20px;
        color: #666;
        font-style: italic;
    }

    .users-list.svelte-1pxo7fm {
        max-height: 400px;
        overflow-y: auto;
        border: 1px solid #ddd;
        border-radius: 6px;
        margin-bottom: 20px;
    }

    .user-item.svelte-1pxo7fm {
        border-bottom: 1px solid #eee;
        transition: background-color 0.2s ease;
    }

    .user-item.svelte-1pxo7fm:last-child {
        border-bottom: none;
    }

    .user-item.selected.svelte-1pxo7fm {
        background-color: #f0f8ff;
    }

    .user-item.svelte-1pxo7fm:hover {
        background-color: #f9f9f9;
    }

    .user-item.selected.svelte-1pxo7fm:hover {
        background-color: #e6f3ff;
    }

    .user-label.svelte-1pxo7fm {
        display: flex;
        align-items: center;
        padding: 12px;
        cursor: pointer;
        gap: 12px;
    }

    .user-info.svelte-1pxo7fm {
        flex: 1;
    }

    .user-name.svelte-1pxo7fm {
        font-weight: 500;
        margin-bottom: 4px;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .user-type.svelte-1pxo7fm {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .user-type.student.svelte-1pxo7fm {
        background-color: #e3f2fd;
        color: #1976d2;
    }

    .user-type.teacher.svelte-1pxo7fm {
        background-color: #f3e5f5;
        color: #7b1fa2;
    }

    .user-type.spreadsheet.svelte-1pxo7fm {
        background-color: #fff3cd;
        color: #856404;
    }

    .spreadsheet-info.svelte-1pxo7fm {
        background: #e3f2fd;
        padding: 15px;
        border-radius: 6px;
        margin-bottom: 15px;
        border: 1px solid #90caf9;
    }

    .spreadsheet-info.svelte-1pxo7fm p:where(.svelte-1pxo7fm) {
        margin: 5px 0;
        color: #1565c0;
    }

    .spreadsheet-info.svelte-1pxo7fm strong:where(.svelte-1pxo7fm) {
        color: #0d47a1;
    }

    .user-email-container.svelte-1pxo7fm {
        flex: 1;
    }

    .user-email-display.svelte-1pxo7fm {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    .user-email.svelte-1pxo7fm {
        color: #666;
        font-size: 13px;
        flex: 1;
    }

    .user-email.custom-email.svelte-1pxo7fm {
        color: #0066cc;
        font-weight: 500;
    }

    .email-status.svelte-1pxo7fm {
        font-size: 11px;
        color: #0066cc;
        font-style: italic;
    }

    .edit-email-btn.svelte-1pxo7fm, .reset-email-btn.svelte-1pxo7fm {
        background: none;
        border: none;
        cursor: pointer;
        padding: 2px;
        font-size: 12px;
        opacity: 0.6;
        transition: opacity 0.2s ease;
        border-radius: 3px;
    }

    .edit-email-btn.svelte-1pxo7fm:hover, .reset-email-btn.svelte-1pxo7fm:hover {
        opacity: 1;
        background-color: #f0f0f0;
    }

    .reset-email-btn.svelte-1pxo7fm {
        color: #666;
        font-weight: bold;
    }

    .email-edit-container.svelte-1pxo7fm {
        display: flex;
        align-items: center;
        gap: 4px;
        width: 100%;
    }

    .email-edit-input.svelte-1pxo7fm {
        flex: 1;
        padding: 4px 6px;
        border: 1px solid #ddd;
        border-radius: 3px;
        font-size: 12px;
        min-width: 0;
    }

    .email-edit-input.svelte-1pxo7fm:focus {
        outline: none;
        border-color: #007bff;
        box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
    }

    .email-edit-btn.svelte-1pxo7fm {
        background: none;
        border: 1px solid #ddd;
        cursor: pointer;
        padding: 2px 6px;
        font-size: 11px;
        border-radius: 3px;
        min-width: 20px;
        height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.2s ease;
    }

    .email-edit-btn.save.svelte-1pxo7fm {
        color: #28a745;
        border-color: #28a745;
    }

    .email-edit-btn.save.svelte-1pxo7fm:hover {
        background-color: #28a745;
        color: white;
    }

    .email-edit-btn.cancel.svelte-1pxo7fm {
        color: #dc3545;
        border-color: #dc3545;
    }

    .email-edit-btn.cancel.svelte-1pxo7fm:hover {
        background-color: #dc3545;
        color: white;
    }

    .custom-indicator.svelte-1pxo7fm {
        color: #0066cc;
        font-weight: bold;
        margin-left: 4px;
    }

    .email-form.svelte-1pxo7fm {
        background: #f9f9f9;
        padding: 20px;
        border-radius: 8px;
        margin-top: 20px;
    }

    .form-group.svelte-1pxo7fm {
        margin-bottom: 15px;
    }

    .form-group.svelte-1pxo7fm label:where(.svelte-1pxo7fm) {
        display: block;
        margin-bottom: 5px;
        font-weight: 500;
        color: #333;
    }

    .form-input.svelte-1pxo7fm, .form-textarea.svelte-1pxo7fm {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
        font-family: inherit;
    }

    .form-textarea.svelte-1pxo7fm {
        resize: vertical;
        min-height: 120px;
    }

    .selected-preview.svelte-1pxo7fm {
        margin-bottom: 20px;
        padding: 15px;
        background: white;
        border-radius: 6px;
        border: 1px solid #ddd;
    }

    .selected-preview.svelte-1pxo7fm h5:where(.svelte-1pxo7fm) {
        margin: 0 0 10px 0;
        color: #333;
    }

    .preview-list.svelte-1pxo7fm {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .preview-user.svelte-1pxo7fm {
        background: #e9ecef;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        color: #495057;
    }

    .send-btn.svelte-1pxo7fm {
        padding: 12px 24px;
        background: #28a745;
        color: white;
        border: none;
        border-radius: 6px;
        font-size: 16px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .send-btn.svelte-1pxo7fm:hover:not(:disabled) {
        background: #218838;
    }

    .send-btn.svelte-1pxo7fm:disabled {
        background: #6c757d;
        cursor: not-allowed;
    }

    .send-btn.sending.svelte-1pxo7fm {
        background: #ffc107;
        color: #212529;
    }

    .error-message.svelte-1pxo7fm {
        background: #f8d7da;
        color: #721c24;
        padding: 12px;
        border-radius: 6px;
        margin-top: 15px;
        border: 1px solid #f5c6cb;
    }

    .success-message.svelte-1pxo7fm {
        background: #d4edda;
        color: #155724;
        padding: 12px;
        border-radius: 6px;
        margin-top: 15px;
        border: 1px solid #c3e6cb;
    }

    /* Progress Box styles */
    .progress-container.svelte-1pxo7fm {
        margin-top: 20px;
        background: white;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    .progress-header.svelte-1pxo7fm {
        background: #f8f9fa;
        color: #333;
        padding: 12px 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #e0e0e0;
    }

    .progress-header.svelte-1pxo7fm h4:where(.svelte-1pxo7fm) {
        margin: 0;
        font-size: 14px;
        font-weight: 500;
        color: #333;
    }

    .close-progress.svelte-1pxo7fm {
        background: none;
        border: none;
        color: #666;
        font-size: 18px;
        cursor: pointer;
        padding: 0;
        width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 3px;
        transition: all 0.2s ease;
    }

    .close-progress.svelte-1pxo7fm:hover {
        background: #e9ecef;
        color: #333;
    }

    .progress-logs.svelte-1pxo7fm {
        height: 250px;
        overflow-y: auto;
        padding: 15px;
        background: white;
        font-size: 13px;
        line-height: 1.5;
    }

    .progress-message.svelte-1pxo7fm {
        color: #6c757d;
        font-style: italic;
        margin-bottom: 10px;
    }

    .success-entry.svelte-1pxo7fm {
        margin-bottom: 8px;
        display: flex;
        align-items: flex-start;
        word-wrap: break-word;
        padding: 4px 0;
    }

    .success-message.svelte-1pxo7fm {
        color: #28a745;
        font-weight: 500;
        flex: 1;
    }

    .completion-message.svelte-1pxo7fm {
        margin-top: 15px;
        padding: 10px;
        background: #d4edda;
        color: #155724;
        border-radius: 4px;
        font-weight: 500;
        text-align: center;
    }

    .timestamp.svelte-1pxo7fm {
        color: #6c757d;
        margin-right: 10px;
        flex-shrink: 0;
        font-size: 11px;
        font-family: monospace;
    }

    /* Progress scrollbar */
    .progress-logs.svelte-1pxo7fm::-webkit-scrollbar {
        width: 6px;
    }

    .progress-logs.svelte-1pxo7fm::-webkit-scrollbar-track {
        background: #f1f1f1;
    }

    .progress-logs.svelte-1pxo7fm::-webkit-scrollbar-thumb {
        background: #c1c1c1;
        border-radius: 3px;
    }

    .progress-logs.svelte-1pxo7fm::-webkit-scrollbar-thumb:hover {
        background: #a8a8a8;
    }

    /* Failed summary styles */
    .failed-summary.svelte-1pxo7fm {
        margin-top: 20px;
        background: #fff3cd;
        border: 1px solid #ffeaa7;
        border-radius: 8px;
        padding: 20px;
        color: #856404;
    }

    .failed-summary.svelte-1pxo7fm h4:where(.svelte-1pxo7fm) {
        margin: 0 0 10px 0;
        color: #721c24;
    }

    .failed-list.svelte-1pxo7fm {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 4px;
        padding: 15px;
        margin: 15px 0;
        max-height: 200px;
        overflow-y: auto;
    }

    .failed-list.svelte-1pxo7fm li:where(.svelte-1pxo7fm) {
        margin-bottom: 8px;
        padding: 4px 0;
        border-bottom: 1px solid #f0f0f0;
        font-family: 'Courier New', monospace;
        font-size: 13px;
    }

    .failed-list.svelte-1pxo7fm li:where(.svelte-1pxo7fm):last-child {
        border-bottom: none;
        margin-bottom: 0;
    }

    .contact-note.svelte-1pxo7fm {
        margin: 15px 0 0 0;
        font-weight: 500;
        font-style: italic;
        color: #495057;
    }

    /* Responsive design */
    @media (max-width: 768px) {
        .select-users-email-container.svelte-1pxo7fm {
            padding: 15px;
        }

        .filter-buttons.svelte-1pxo7fm, .selection-controls.svelte-1pxo7fm {
            flex-direction: column;
            align-items: stretch;
        }

        .selected-count.svelte-1pxo7fm {
            margin-left: 0;
            margin-top: 10px;
        }

        .user-label.svelte-1pxo7fm {
            padding: 10px;
        }

        .preview-list.svelte-1pxo7fm {
            flex-direction: column;
        }
    }


    .select-users-sms-container.svelte-1lx2n8f {
        max-width: 800px;
        margin: 0 auto;
        padding: 20px;
    }

    .filter-buttons.svelte-1lx2n8f {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .filter-btn.svelte-1lx2n8f {
        padding: 8px 16px;
        border: 1px solid #ddd;
        background: white;
        cursor: pointer;
        border-radius: 6px;
        font-size: 14px;
        transition: all 0.2s ease;
    }

    .filter-btn.active.svelte-1lx2n8f {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .search-container.svelte-1lx2n8f {
        margin-bottom: 15px;
    }

    .search-input.svelte-1lx2n8f {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
    }

    .selection-controls.svelte-1lx2n8f {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .selection-btn.svelte-1lx2n8f {
        padding: 6px 12px;
        border: 1px solid #007bff;
        background: white;
        color: #007bff;
        cursor: pointer;
        border-radius: 4px;
        font-size: 13px;
        transition: all 0.2s ease;
    }

    .selected-count.svelte-1lx2n8f {
        font-weight: bold;
        color: #555;
        margin-left: auto;
    }

    .loading.svelte-1lx2n8f, .no-users.svelte-1lx2n8f {
        text-align: center;
        padding: 20px;
        color: #666;
        font-style: italic;
    }

    .users-list.svelte-1lx2n8f {
        max-height: 400px;
        overflow-y: auto;
        border: 1px solid #ddd;
        border-radius: 6px;
        margin-bottom: 20px;
    }

    .user-item.svelte-1lx2n8f {
        border-bottom: 1px solid #eee;
    }

    .user-item.selected.svelte-1lx2n8f {
        background-color: #f0f8ff;
    }

    .user-label.svelte-1lx2n8f {
        display: flex;
        align-items: center;
        padding: 12px;
        cursor: pointer;
        gap: 12px;
    }

    .user-info.svelte-1lx2n8f {
        flex: 1;
    }

    .user-name.svelte-1lx2n8f {
        font-weight: 500;
        margin-bottom: 4px;
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }

    .user-type.svelte-1lx2n8f {
        padding: 2px 8px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: bold;
        text-transform: uppercase;
    }

    .user-type.student.svelte-1lx2n8f {
        background-color: #e3f2fd;
        color: #1976d2;
    }

    .user-type.teacher.svelte-1lx2n8f {
        background-color: #f3e5f5;
        color: #7b1fa2;
    }

    .user-type.parent.svelte-1lx2n8f {
        background-color: #fff3cd;
        color: #856404;
    }

    .user-meta.svelte-1lx2n8f {
        color: #666;
        font-size: 12px;
    }

    .phone.missing.svelte-1lx2n8f {
        color: #b00020;
        font-style: italic;
    }

    .sms-form.svelte-1lx2n8f {
        background: #f9f9f9;
        padding: 20px;
        border-radius: 8px;
        margin-top: 20px;
    }

    .form-group.svelte-1lx2n8f {
        margin-bottom: 15px;
    }

    .form-group.svelte-1lx2n8f label:where(.svelte-1lx2n8f) {
        display: block;
        margin-bottom: 5px;
        font-weight: 500;
        color: #333;
    }

    .form-input.svelte-1lx2n8f, .form-textarea.svelte-1lx2n8f {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 6px;
        font-size: 14px;
        font-family: inherit;
    }

    .send-btn.svelte-1lx2n8f {
        padding: 12px 24px;
        background: #28a745;
        color: white;
        border: none;
        border-radius: 6px;
        font-size: 16px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .send-btn.svelte-1lx2n8f:disabled {
        background: #6c757d;
        cursor: not-allowed;
    }

    .send-btn.sending.svelte-1lx2n8f {
        background: #ffc107;
        color: #212529;
    }

    .error-message.svelte-1lx2n8f {
        background: #f8d7da;
        color: #721c24;
        padding: 12px;
        border-radius: 6px;
        margin-top: 15px;
        border: 1px solid #f5c6cb;
    }

    .success-message.svelte-1lx2n8f {
        background: #d4edda;
        color: #155724;
        padding: 12px;
        border-radius: 6px;
        margin-top: 15px;
        border: 1px solid #c3e6cb;
    }

    .progress-container.svelte-1lx2n8f {
        margin-top: 20px;
        background: white;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    .progress-header.svelte-1lx2n8f {
        background: #f8f9fa;
        color: #333;
        padding: 12px 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #e0e0e0;
    }

    .progress-header.svelte-1lx2n8f h4:where(.svelte-1lx2n8f) {
        margin: 0;
        font-size: 14px;
        font-weight: 500;
        color: #333;
    }

    .close-progress.svelte-1lx2n8f {
        background: none;
        border: none;
        color: #666;
        font-size: 18px;
        cursor: pointer;
        padding: 0;
        width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 3px;
    }

    .progress-logs.svelte-1lx2n8f {
        height: 250px;
        overflow-y: auto;
        padding: 15px;
        background: white;
        font-size: 13px;
        line-height: 1.5;
    }

    .success-entry.svelte-1lx2n8f {
        margin-bottom: 8px;
        display: flex;
        align-items: flex-start;
        word-wrap: break-word;
        padding: 4px 0;
    }

    .timestamp.svelte-1lx2n8f {
        color: #6c757d;
        margin-right: 10px;
        flex-shrink: 0;
        font-size: 11px;
        font-family: monospace;
    }

    .success-message.svelte-1lx2n8f {
        color: #28a745;
        font-weight: 500;
        flex: 1;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
    }

    .completion-message.svelte-1lx2n8f {
        margin-top: 15px;
        padding: 10px;
        background: #d4edda;
        color: #155724;
        border-radius: 4px;
        font-weight: 500;
        text-align: center;
    }

    .failed-summary.svelte-1lx2n8f {
        margin-top: 20px;
        background: #fff3cd;
        border: 1px solid #ffeaa7;
        border-radius: 8px;
        padding: 20px;
        color: #856404;
    }

    .failed-list.svelte-1lx2n8f {
        background: white;
        border: 1px solid #dee2e6;
        border-radius: 4px;
        padding: 15px;
        margin: 15px 0 0 0;
        max-height: 200px;
        overflow-y: auto;
    }


  .information-section-component.svelte-g2xu4z {
    max-width: 100%;
    padding: 20px;
  }

  .information-section-component.svelte-g2xu4z h2:where(.svelte-g2xu4z) {
    color: #fab45a;
    margin-bottom: 10px;
  }

  .description.svelte-g2xu4z {
    color: #666;
    margin-bottom: 30px;
    font-size: 1em;
  }

  .message.svelte-g2xu4z {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 20px;
    font-weight: 500;
  }

  .message.success.svelte-g2xu4z {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
  }

  .message.error.svelte-g2xu4z {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
  }

  .section-form.svelte-g2xu4z {
    background: white;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    margin-bottom: 30px;
  }

  .section-form.svelte-g2xu4z h3:where(.svelte-g2xu4z) {
    margin-top: 0;
    margin-bottom: 20px;
    color: #333;
  }

  .form-group.svelte-g2xu4z {
    margin-bottom: 20px;
  }

  .form-group.svelte-g2xu4z label:where(.svelte-g2xu4z) {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
    color: #333;
  }

  .form-group.svelte-g2xu4z input[type="text"]:where(.svelte-g2xu4z),
  .form-group.svelte-g2xu4z input[type="number"]:where(.svelte-g2xu4z) {
    width: 100%;
    padding: 10px;
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    box-sizing: border-box;
  }

  .form-group.svelte-g2xu4z input[type="text"]:where(.svelte-g2xu4z):focus,
  .form-group.svelte-g2xu4z input[type="number"]:where(.svelte-g2xu4z):focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
  }

  .form-group.svelte-g2xu4z small:where(.svelte-g2xu4z) {
    display: block;
    margin-top: 5px;
    color: #666;
    font-size: 12px;
  }

  .form-row.svelte-g2xu4z {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
  }

  .form-row.svelte-g2xu4z .form-group:where(.svelte-g2xu4z) {
    flex: 1;
    min-width: 150px;
  }

  .checkbox-group.svelte-g2xu4z {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }

  .checkbox-group.svelte-g2xu4z label:where(.svelte-g2xu4z) {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
  }

  .checkbox-group.svelte-g2xu4z input[type="checkbox"]:where(.svelte-g2xu4z) {
    width: auto;
    cursor: pointer;
  }

  .form-actions.svelte-g2xu4z {
    display: flex;
    gap: 10px;
    margin-top: 25px;
  }

  button.svelte-g2xu4z {
    padding: 10px 20px;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
  }

  button.svelte-g2xu4z:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-primary.svelte-g2xu4z {
    background: #fab45a;
    color: black;
  }

  .btn-primary.svelte-g2xu4z:hover:not(:disabled) {
    background: #f9a845;
  }

  .btn-secondary.svelte-g2xu4z {
    background: #6c757d;
    color: white;
  }

  .btn-secondary.svelte-g2xu4z:hover:not(:disabled) {
    background: #5a6268;
  }

  .btn-refresh.svelte-g2xu4z {
    background: #007bff;
    color: white;
    padding: 8px 16px;
    font-size: 13px;
  }

  .btn-refresh.svelte-g2xu4z:hover:not(:disabled) {
    background: #0056b3;
  }

  .sections-list.svelte-g2xu4z {
    background: white;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
  }

  .list-header.svelte-g2xu4z {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
  }

  .list-header.svelte-g2xu4z h3:where(.svelte-g2xu4z) {
    margin: 0;
    color: #333;
  }

  .loading.svelte-g2xu4z,
  .empty.svelte-g2xu4z {
    text-align: center;
    padding: 40px;
    color: #666;
  }

  .sections-table.svelte-g2xu4z {
    overflow-x: auto;
  }

  table.svelte-g2xu4z {
    width: 100%;
    border-collapse: collapse;
  }

  thead.svelte-g2xu4z {
    background-color: #f8f9fa;
  }

  th.svelte-g2xu4z {
    padding: 12px;
    text-align: left;
    font-weight: 600;
    color: #333;
    border-bottom: 2px solid #dee2e6;
  }

  td.svelte-g2xu4z {
    padding: 12px;
    border-bottom: 1px solid #dee2e6;
    color: #555;
  }

  tr.svelte-g2xu4z:hover {
    background-color: #f8f9fa;
  }

  .topic-cell.svelte-g2xu4z {
    font-weight: 500;
  }

  .date-cell.svelte-g2xu4z {
    font-size: 13px;
    color: #666;
  }

  .actions-cell.svelte-g2xu4z {
    display: flex;
    gap: 8px;
  }

  .btn-edit.svelte-g2xu4z {
    background: #17a2b8;
    color: white;
    padding: 6px 12px;
    font-size: 13px;
  }

  .btn-edit.svelte-g2xu4z:hover {
    background: #138496;
  }

  .btn-delete.svelte-g2xu4z {
    background: #dc3545;
    color: white;
    padding: 6px 12px;
    font-size: 13px;
  }

  .btn-delete.svelte-g2xu4z:hover {
    background: #c82333;
  }

  .badge.svelte-g2xu4z {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    margin-left: 8px;
  }

  .badge.published.svelte-g2xu4z {
    background-color: #d4edda;
    color: #155724;
  }

  .badge.draft.svelte-g2xu4z {
    background-color: #fff3cd;
    color: #856404;
  }

  .badge.featured.svelte-g2xu4z {
    background-color: #d1ecf1;
    color: #0c5460;
  }


  .information-sections-display.svelte-1uc40b6 {
    max-width: 100%;
    padding: 20px;
  }

  .header.svelte-1uc40b6 h2:where(.svelte-1uc40b6) {
    color: #fab45a;
    margin-bottom: 10px;
  }

  .description.svelte-1uc40b6 {
    color: #666;
    margin-bottom: 25px;
    font-size: 1em;
  }

  .controls.svelte-1uc40b6 {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
    flex-wrap: wrap;
    align-items: flex-end;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
  }

  .filter-group.svelte-1uc40b6,
  .search-group.svelte-1uc40b6,
  .sort-group.svelte-1uc40b6 {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }

  .filter-group.svelte-1uc40b6 label:where(.svelte-1uc40b6),
  .search-group.svelte-1uc40b6 label:where(.svelte-1uc40b6),
  .sort-group.svelte-1uc40b6 label:where(.svelte-1uc40b6) {
    font-size: 12px;
    font-weight: 500;
    color: #555;
  }

  .filter-group.svelte-1uc40b6 select:where(.svelte-1uc40b6),
  .sort-group.svelte-1uc40b6 select:where(.svelte-1uc40b6) {
    padding: 8px 12px;
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    background: white;
    cursor: pointer;
  }

  .filter-group.svelte-1uc40b6 select:where(.svelte-1uc40b6):focus,
  .sort-group.svelte-1uc40b6 select:where(.svelte-1uc40b6):focus {
    outline: none;
    border-color: #fab45a;
  }

  .search-group.svelte-1uc40b6 input:where(.svelte-1uc40b6) {
    padding: 8px 12px;
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    min-width: 200px;
  }

  .search-group.svelte-1uc40b6 input:where(.svelte-1uc40b6):focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
  }

  .btn-refresh.svelte-1uc40b6 {
    padding: 8px 16px;
    background: #007bff;
    color: white;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s;
  }

  .btn-refresh.svelte-1uc40b6:hover:not(:disabled) {
    background: #0056b3;
  }

  .btn-refresh.svelte-1uc40b6:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .message.svelte-1uc40b6 {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 20px;
    font-weight: 500;
  }

  .message.error.svelte-1uc40b6 {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
  }

  .loading.svelte-1uc40b6,
  .empty.svelte-1uc40b6 {
    text-align: center;
    padding: 60px 20px;
    color: #666;
    font-size: 16px;
  }

  .sections-list.svelte-1uc40b6 {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .section-card.svelte-1uc40b6 {
    background: white;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
  }

  .section-card.svelte-1uc40b6:hover {
    border-color: #fab45a;
    box-shadow: 0px 2px 8px rgba(250, 180, 90, 0.15);
  }

  .section-card.expanded.svelte-1uc40b6 {
    border-color: #fab45a;
  }

  .section-header.svelte-1uc40b6 {
    padding: 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color 0.2s;
  }

  .section-header.svelte-1uc40b6:hover {
    background-color: #f8f9fa;
  }

  .section-header-content.svelte-1uc40b6 {
    flex: 1;
  }

  .section-title-group.svelte-1uc40b6 {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    flex-wrap: wrap;
  }

  .section-topic.svelte-1uc40b6 {
    margin: 0;
    font-size: 1.3em;
    font-weight: 600;
    color: #333;
  }

  .badges.svelte-1uc40b6 {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
  }

  .badge.svelte-1uc40b6 {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
  }

  .badge.published.svelte-1uc40b6 {
    background-color: #d4edda;
    color: #155724;
  }

  .badge.draft.svelte-1uc40b6 {
    background-color: #fff3cd;
    color: #856404;
  }

  .badge.featured.svelte-1uc40b6 {
    background-color: #d1ecf1;
    color: #0c5460;
  }

  .section-meta.svelte-1uc40b6 {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    font-size: 13px;
    color: #666;
  }

  .meta-item.svelte-1uc40b6 {
    display: flex;
    align-items: center;
  }

  .expand-icon.svelte-1uc40b6 {
    transition: transform 0.3s ease;
    color: #666;
    flex-shrink: 0;
    margin-left: 15px;
  }

  .expand-icon.expanded.svelte-1uc40b6 {
    transform: rotate(180deg);
  }

  .section-content.svelte-1uc40b6 {
    padding: 0 20px 20px 20px;
    border-top: 1px solid #e0e0e0;
    animation: svelte-1uc40b6-slideDown 0.3s ease;
  }

  @keyframes svelte-1uc40b6-slideDown {
    from {
      opacity: 0;
      max-height: 0;
    }
    to {
      opacity: 1;
      max-height: 5000px;
    }
  }

  .content-wrapper.svelte-1uc40b6 {
    padding: 20px 0;
    line-height: 1.6;
    color: #333;
  }

  /* Style HTML content from TinyMCE */
  .content-wrapper.svelte-1uc40b6 p {
    margin-bottom: 1em;
  }

  .content-wrapper.svelte-1uc40b6 h1,
  .content-wrapper.svelte-1uc40b6 h2,
  .content-wrapper.svelte-1uc40b6 h3,
  .content-wrapper.svelte-1uc40b6 h4,
  .content-wrapper.svelte-1uc40b6 h5,
  .content-wrapper.svelte-1uc40b6 h6 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    font-weight: 600;
    color: #333;
  }

  .content-wrapper.svelte-1uc40b6 h1 {
    font-size: 2em;
  }

  .content-wrapper.svelte-1uc40b6 h2 {
    font-size: 1.5em;
  }

  .content-wrapper.svelte-1uc40b6 h3 {
    font-size: 1.25em;
  }

  .content-wrapper.svelte-1uc40b6 ul,
  .content-wrapper.svelte-1uc40b6 ol {
    margin-bottom: 1em;
    padding-left: 2em;
  }

  .content-wrapper.svelte-1uc40b6 li {
    margin-bottom: 0.5em;
  }

  .content-wrapper.svelte-1uc40b6 img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    margin: 1em 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .content-wrapper.svelte-1uc40b6 a {
    color: #007bff;
    text-decoration: none;
  }

  .content-wrapper.svelte-1uc40b6 a:hover {
    text-decoration: underline;
  }

  .content-wrapper.svelte-1uc40b6 table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
  }

  .content-wrapper.svelte-1uc40b6 table td,
  .content-wrapper.svelte-1uc40b6 table th {
    padding: 8px 12px;
    border: 1px solid #ddd;
  }

  .content-wrapper.svelte-1uc40b6 table th {
    background-color: #f8f9fa;
    font-weight: 600;
  }

  .content-wrapper.svelte-1uc40b6 blockquote {
    border-left: 4px solid #fab45a;
    padding-left: 1em;
    margin: 1em 0;
    color: #666;
    font-style: italic;
  }

  .section-footer.svelte-1uc40b6 {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #e0e0e0;
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    font-size: 12px;
    color: #666;
  }

  .footer-item.svelte-1uc40b6 {
    display: flex;
    align-items: center;
  }


    .tab-navigation.svelte-pvptgf {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
        flex-wrap: wrap;
    }

    .tab-button.svelte-pvptgf {
        padding: 10px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 14px;
        display: flex;
        align-items: center;
        gap: 10px;
        position: relative;
    }

    .tab-button.active.svelte-pvptgf {
        background: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .count-badge.svelte-pvptgf {
        background-color: #dc3545;
        color: white;
        border-radius: 50%;
        padding: 4px 8px;
        font-size: 12px;
        font-weight: bold;
        min-width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    .classcontainer.svelte-pvptgf {
        padding: 15px;
        background-color: white;
        flex-direction: column;
        margin-bottom: 15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color: black;
        align-items: flex-start;
    }

    .classcontainer.svelte-pvptgf h3:where(.svelte-pvptgf) {
        margin: 0 0 15px 0;
        color: #333;
    }

    .classcontainer.svelte-pvptgf h4:where(.svelte-pvptgf) {
        margin: 0 0 10px 0;
        color: #555;
        font-size: 1.1rem;
        font-weight: 500;
    }

    /* Sub-tab navigation */
    .sub-tab-navigation.svelte-pvptgf {
        display: flex;
        gap: 8px;
        margin-bottom: 20px;
        border-bottom: 1px solid #e0e0e0;
        padding-bottom: 10px;
    }

    .sub-tab-button.svelte-pvptgf {
        padding: 8px 16px;
        border: 1px solid #ddd;
        background: #f8f9fa;
        cursor: pointer;
        border-radius: 6px;
        font-size: 13px;
        color: #666;
        transition: all 0.2s ease;
    }

    .sub-tab-button.active.svelte-pvptgf {
        background: #007bff;
        color: white;
        border-color: #007bff;
    }

    .sub-tab-button.svelte-pvptgf:hover:not(.active) {
        background: #e9ecef;
        border-color: #bbb;
    }

    .sub-content.svelte-pvptgf {
        margin-top: 15px;
    }

    /* Override nested component styles for cleaner integration */
    .classcontainer .admin-reschedule-requests {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .create-student-email {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .send-weekly-sms {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .refresh-database {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .select-users-email-container {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .select-users-sms-container {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .teacher-finder {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .information-section-component {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .classcontainer .information-sections-display {
        max-width: none;
        margin: 0;
        padding: 0;
    }


  .autocomplete-list.svelte-pviwv2 {
    border: 1px solid #ccc;
    max-height: 180px;
    overflow-y: auto;
    margin: 0;
    padding: 0;
    list-style: none;
    background: white;
    position: absolute;
    z-index: 10;
    width: 300px;
  }
  .autocomplete-list.svelte-pviwv2 li:where(.svelte-pviwv2) {
    padding: 0;
  }
  .autocomplete-list.svelte-pviwv2 button:where(.svelte-pviwv2) {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    display: block;
  }
  .autocomplete-list.svelte-pviwv2 button:where(.svelte-pviwv2):hover {
    background: #f0f0f0;
  }
  .selected.svelte-pviwv2 {
    margin-top: 0.5em;
    color: #2a7ae2;
  }
  input[type="text"].svelte-pviwv2 {
    width: 300px;
    padding: 8px;
    margin-bottom: 0;
    box-sizing: border-box;
  }

   /* Shared Classes Styles */
  .loading.svelte-pviwv2 {
    color: #666;
    font-style: italic;
    padding: 1em;
  }

  .error.svelte-pviwv2 {
    color: #d32f2f;
    background: #ffebee;
    padding: 1em;
    border-radius: 4px;
    border-left: 4px solid #d32f2f;
  }

  .classes-list.svelte-pviwv2 {
    display: grid;
    gap: 1em;
    margin-top: 1em;
  }

  .class-item.svelte-pviwv2 {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 1em;
    background: #f9f9f9;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .class-item.svelte-pviwv2:hover {
    background: #f0f8ff;
    border-color: #2a7ae2;
  }

  .class-item.selected.svelte-pviwv2 {
    background: #e6f3ff;
    border-color: #2a7ae2;
    border-width: 2px;
  }

  .class-item.minimized.svelte-pviwv2 {
    opacity: 0.4;
    transform: scale(0.95);
  }

  .class-item.svelte-pviwv2 h4:where(.svelte-pviwv2) {
    margin: 0 0 0.5em 0;
    color: #2a7ae2;
  }

  .class-item.svelte-pviwv2 p:where(.svelte-pviwv2) {
    margin: 0.25em 0;
    font-size: 0.9em;
  }

  .no-classes.svelte-pviwv2 {
    color: #666;
    font-style: italic;
    padding: 1em;
    text-align: center;
    background: #f5f5f5;
    border-radius: 4px;
  }

  /* Responsibility Form Styles */
  .responsibility-form.svelte-pviwv2 {
    margin-top: 2em;
    padding: 1.5em;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
  }

  .responsibility-form.svelte-pviwv2 h3:where(.svelte-pviwv2) {
    margin: 0 0 1em 0;
    color: #2a7ae2;
  }

  .selected-class-info.svelte-pviwv2 {
    background: #f0f8ff;
    padding: 0.75em;
    border-radius: 4px;
    margin-bottom: 1em;
    font-size: 0.9em;
  }

  .form-group.svelte-pviwv2 {
    margin-bottom: 1em;
  }

  .form-group.svelte-pviwv2 label:where(.svelte-pviwv2) {
    display: block;
    margin-bottom: 0.5em;
    font-weight: bold;
    color: #333;
  }

  .form-group.svelte-pviwv2 select:where(.svelte-pviwv2),
  .form-group.svelte-pviwv2 textarea:where(.svelte-pviwv2) {
    width: 100%;
    padding: 0.5em;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1em;
    box-sizing: border-box;
  }

  .form-group.svelte-pviwv2 select:where(.svelte-pviwv2):focus,
  .form-group.svelte-pviwv2 textarea:where(.svelte-pviwv2):focus {
    outline: none;
    border-color: #2a7ae2;
    box-shadow: 0 0 0 2px rgba(42, 122, 226, 0.1);
  }

  .form-actions.svelte-pviwv2 {
    display: flex;
    gap: 1em;
    margin-top: 1.5em;
  }

  .btn-submit.svelte-pviwv2,
  .btn-cancel.svelte-pviwv2 {
    padding: 0.75em 1.5em;
    border: none;
    border-radius: 4px;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .btn-submit.svelte-pviwv2 {
    background: #2a7ae2;
    color: white;
  }

  .btn-submit.svelte-pviwv2:hover {
    background: #1e5bb8;
  }

  .btn-cancel.svelte-pviwv2 {
    background: #6c757d;
    color: white;
  }

  .btn-cancel.svelte-pviwv2:hover {
    background: #545b62;
  }

  .btn-submit.svelte-pviwv2:disabled {
    background: #ccc;
    cursor: not-allowed;
  }

  .btn-submit.svelte-pviwv2:disabled:hover {
    background: #ccc;
  }

  .submit-error.svelte-pviwv2 {
    color: #d32f2f;
    background: #ffebee;
    padding: 0.75em;
    border-radius: 4px;
    border-left: 4px solid #d32f2f;
    margin-bottom: 1em;
    font-size: 0.9em;
  }

  .submit-success.svelte-pviwv2 {
    color: #2e7d32;
    background: #e8f5e8;
    padding: 0.75em;
    border-radius: 4px;
    border-left: 4px solid #2e7d32;
    margin-bottom: 1em;
    font-size: 0.9em;
  }


  .bonus-detail.svelte-1houzbh { position: relative; display: inline-block; }
  .bonus-trigger.svelte-1houzbh { display: inline-flex; align-items: center; gap: .35rem; border: 0; border-radius: 4px; background: transparent; padding: .3rem .4rem; font: inherit; cursor: pointer; white-space: nowrap; }
  .bonus-trigger.svelte-1houzbh:hover, .bonus-trigger.svelte-1houzbh:focus-visible { background: #f1f5f9; outline: 2px solid #2a6f9e; outline-offset: 1px; }
  .bonus-yes.svelte-1houzbh { color: #2e7d32; font-weight: 600; }
  .bonus-no.svelte-1houzbh { color: #666; }
  .detail-indicator.svelte-1houzbh { color: #356f91; font-size: .85em; }
  .coverage-popover.svelte-1houzbh { position: absolute; z-index: 50; right: 0; top: calc(100% + 5px); width: min(340px, calc(100vw - 32px)); padding: 14px; text-align: left; color: #263238; background: #fff; border: 1px solid #cbd5e1; border-radius: 8px; box-shadow: 0 8px 26px rgba(15, 23, 42, .22); white-space: normal; }
  .coverage-popover.above.svelte-1houzbh { top: auto; bottom: calc(100% + 5px); }
  .popover-header.svelte-1houzbh { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
  .close-button.svelte-1houzbh { border: 0; background: transparent; font-size: 1.35rem; line-height: 1; cursor: pointer; }
  .coverage-summary.svelte-1houzbh { margin: 12px 0 6px; }
  .snapshot-note.svelte-1houzbh { margin: 0 0 12px; color: #596675; font-size: .82rem; }
  .list-label.svelte-1houzbh { margin: 0 0 6px; font-weight: 600; }
  .missing-list.svelte-1houzbh { max-height: 240px; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
  .missing-list.svelte-1houzbh li:where(.svelte-1houzbh) { display: flex; flex-direction: column; gap: 2px; padding: 7px 0; border-top: 1px solid #e5e7eb; }
  .class-name.svelte-1houzbh { overflow-wrap: anywhere; }
  .class-meta.svelte-1houzbh { color: #596675; font-size: .82rem; }


  .teacher-performance-rating.svelte-1oef8d6 {
    max-width: 100%;
    margin: 0 auto;
    padding: 2em;
    width: 100%;
  }

  .teacher-performance-rating.svelte-1oef8d6 h2:where(.svelte-1oef8d6) {
    color: #fab45a;
    margin-bottom: 0.5em;
  }

  .description.svelte-1oef8d6 {
    color: #666;
    margin-bottom: 2em;
    font-size: 1.1em;
  }

  .teacher-selection.svelte-1oef8d6 {
    margin-bottom: 2em;
  }

  .teacher-selection.svelte-1oef8d6 label:where(.svelte-1oef8d6) {
    display: block;
    margin-bottom: 0.5em;
    font-weight: bold;
    color: #333;
  }

  .month-selection.svelte-1oef8d6 {
    margin-top: 1.5em;
  }

  .month-selection.svelte-1oef8d6 label:where(.svelte-1oef8d6) {
    display: block;
    margin-bottom: 0.5em;
    font-weight: bold;
    color: #333;
  }

  .month-dropdown.svelte-1oef8d6 {
    width: 100%;
    padding: 0.75em;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 1em;
    background-color: white;
    cursor: pointer;
    transition: border-color 0.2s;
    box-sizing: border-box;
  }

  .month-dropdown.svelte-1oef8d6:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
  }

  .month-dropdown.svelte-1oef8d6:hover {
    border-color: #fab45a;
  }

  .input-container.svelte-1oef8d6 {
    position: relative;
    margin-bottom: 1em;
  }

  input[type="text"].svelte-1oef8d6 {
    width: 100%;
    padding: 0.75em;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 1em;
    box-sizing: border-box;
    transition: border-color 0.2s;
  }

  input[type="text"].svelte-1oef8d6:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
  }

  .autocomplete-list.svelte-1oef8d6 {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #ddd;
    border-top: none;
    border-radius: 0 0 8px 8px;
    max-height: 240px;
    overflow-y: auto;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 10;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  }

  .autocomplete-list.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
    padding: 0;
  }

  .autocomplete-list.svelte-1oef8d6 button:where(.svelte-1oef8d6) {
    width: 100%;
    background: none;
    border: none;
    padding: 0.75em;
    cursor: pointer;
    display: block;
    text-align: left;
    transition: background-color 0.2s;
  }

  .autocomplete-list.svelte-1oef8d6 button:where(.svelte-1oef8d6):hover {
    background: #f8f9fa;
  }

  .teacher-option.svelte-1oef8d6 {
    display: flex;
    flex-direction: column;
    gap: 0.25em;
  }

  .teacher-name.svelte-1oef8d6 {
    font-weight: 500;
    color: #333;
  }

  .teacher-email.svelte-1oef8d6 {
    font-size: 0.9em;
    color: #666;
  }

  .selected-teacher.svelte-1oef8d6 {
    background: #f8f9fa;
    border: 2px solid #fab45a;
    border-radius: 8px;
    padding: 1.5em;
    margin-top: 1em;
  }

  .selected-teacher-info.svelte-1oef8d6 {
    margin-bottom: 1.5em;
  }

  .selected-teacher-info.svelte-1oef8d6 h3:where(.svelte-1oef8d6) {
    margin: 0 0 1em 0;
    color: #fab45a;
  }

  .selected-teacher-info.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0.5em 0;
    font-size: 1em;
  }

  .action-buttons.svelte-1oef8d6 {
    display: flex;
    gap: 1em;
    flex-wrap: wrap;
  }

  .embedded-auto.svelte-1oef8d6 {
    padding: 0.75em 0;
    color: #666;
    font-size: 0.95em;
    font-style: italic;
  }

  .btn-submit.svelte-1oef8d6,
  .btn-clear.svelte-1oef8d6 {
    padding: 0.75em 1.5em;
    border: none;
    border-radius: 6px;
    font-size: 1em;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
  }

  .btn-submit.svelte-1oef8d6 {
    background: #fab45a;
    color: black;
  }

  .btn-submit.svelte-1oef8d6:hover:not(:disabled) {
    background: #e09a43;
    transform: translateY(-1px);
  }

  .btn-clear.svelte-1oef8d6 {
    background: #6c757d;
    color: white;
  }

  .btn-clear.svelte-1oef8d6:hover:not(:disabled) {
    background: #545b62;
    transform: translateY(-1px);
  }

  .btn-submit.svelte-1oef8d6:disabled,
  .btn-clear.svelte-1oef8d6:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
  }

  .error-message.svelte-1oef8d6 {
    color: #d32f2f;
    background: #ffebee;
    padding: 1em;
    border-radius: 6px;
    border-left: 4px solid #d32f2f;
    margin-top: 1em;
  }

  .success-message.svelte-1oef8d6 {
    color: #2e7d32;
    background: #e8f5e8;
    padding: 1em;
    border-radius: 6px;
    border-left: 4px solid #2e7d32;
    margin-top: 1em;
  }
  /* Retention data display styles */
  .retention-container.svelte-1oef8d6 {
    margin-top: 2em;
    padding: 15px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
  }

  .retention-container.svelte-1oef8d6 h3:where(.svelte-1oef8d6) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.2em;
  }

  .retention-summary.svelte-1oef8d6 {
    margin-bottom: 20px;
    padding: 10px;
    background-color: #f8f9fa;
    border-radius: 6px;
    text-align: center;
  }

  .retention-rate.svelte-1oef8d6 {
    font-size: 1.3em;
    color: #fab45a;
    margin-bottom: 5px;
  }

  .retention-summary.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0;
    color: #666;
    font-size: 0.9em;
  }

  .month-comparison.svelte-1oef8d6 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }

  /* Payment breakdown specific styling */
  .payment-breakdown-container.svelte-1oef8d6 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }

  .payment-section.svelte-1oef8d6 {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .payment-section.svelte-1oef8d6 h5:where(.svelte-1oef8d6) {
    margin: 0 0 12px 0;
    color: #fab45a;
    font-size: 1em;
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
  }

  .class-count-list.svelte-1oef8d6 {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .class-count-list.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
    padding: 6px 0;
    font-size: 0.9em;
    border-bottom: 1px solid #e9ecef;
  }

  .class-count-list.svelte-1oef8d6 li:where(.svelte-1oef8d6):last-child {
    border-bottom: none;
  }

  .total-classes.svelte-1oef8d6 {
    background-color: #e8f5e8;
    color: #2e7d32;
    padding: 6px 8px;
    border-radius: 4px;
    margin-top: 6px;
    border: none !important;
  }

  .payment-total-only.svelte-1oef8d6 {
    background-color: #fab45a;
    color: black;
    padding: 12px;
    border-radius: 8px;
    margin-top: 20px;
    text-align: center;
  }

  .payment-total-only.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0;
    font-size: 1.1em;
  }

  .month-data.svelte-1oef8d6 {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .month-data.svelte-1oef8d6 h4:where(.svelte-1oef8d6) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1em;
  }

  .month-data.svelte-1oef8d6 ul:where(.svelte-1oef8d6) {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .month-data.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
    padding: 3px 0;
    font-size: 0.9em;
  }

  .student-details.svelte-1oef8d6 {
    margin-bottom: 15px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .student-details.svelte-1oef8d6 h4:where(.svelte-1oef8d6) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1em;
  }

  .student-list.svelte-1oef8d6 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 5px;
  }

  .student-list.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
    padding: 3px 0;
    font-size: 0.9em;
    color: #555;
  }

  /* Comments analysis styles */
  .comments-section.svelte-1oef8d6 {
    margin-bottom: 20px;
  }

  .comments-section.svelte-1oef8d6 h4:where(.svelte-1oef8d6) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1.1em;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
  }

  .comments-section.svelte-1oef8d6 h5:where(.svelte-1oef8d6) {
    margin: 0 0 8px 0;
    color: #fab45a;
    font-size: 1em;
  }

  .metrics-grid.svelte-1oef8d6 {
    display: grid;
    gap: 15px;
    margin-top: 10px;
  }

  .metric-item.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 12px;
    border-radius: 6px;
  }

  .metric-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    display: block;
    margin-bottom: 8px;
    color: #333;
    font-size: 0.9em;
  }

  .metric-bar.svelte-1oef8d6 {
    width: 100%;
    height: 20px;
    background-color: #e9ecef;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 5px;
  }

  .metric-fill.svelte-1oef8d6 {
    height: 100%;
    background-color: #fab45a;
    transition: width 0.3s ease;
    border-radius: 10px;
  }

  .metric-item.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    color: #666;
    font-size: 0.8em;
  }

  .sample-comments.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .comment-item.svelte-1oef8d6 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e9ecef;
  }

  .comment-item.svelte-1oef8d6:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }

  .comment-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    color: #fab45a;
    font-size: 0.9em;
    margin-right: 8px;
  }

  .comment-item.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
    color: #555;
    font-size: 0.9em;
    line-height: 1.4;
  }

  .no-data.svelte-1oef8d6 {
    text-align: center;
    padding: 20px;
    color: #666;
    font-style: italic;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  /* Completion and punctuality specific styles */
  .weekly-trends.svelte-1oef8d6 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-top: 10px;
  }

  .week-item.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 12px;
    border-radius: 6px;
    text-align: center;
  }

  .week-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    display: block;
    color: #fab45a;
    margin-bottom: 8px;
    font-size: 0.9em;
  }

  .week-stats.svelte-1oef8d6 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
  }

  .week-stats.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
    font-size: 0.8em;
    color: #555;
  }

  .week-stats.svelte-1oef8d6 .late-incidents:where(.svelte-1oef8d6) {
    color: #d32f2f;
    font-size: 0.75em;
    font-weight: 500;
  }

  .week-item.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    color: #666;
    font-size: 0.75em;
  }

  .incident-summary.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .incident-summary.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0 0 10px 0;
    color: #333;
  }

  .incident-summary.svelte-1oef8d6 ul:where(.svelte-1oef8d6) {
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0;
  }

  .incident-summary.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
    padding: 4px 0;
    font-size: 0.9em;
    color: #555;
  }

  .incident-details.svelte-1oef8d6 {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e9ecef;
  }

  .incident-details.svelte-1oef8d6 h5:where(.svelte-1oef8d6) {
    margin: 0 0 10px 0;
    color: #fab45a;
    font-size: 0.95em;
  }

  .incident-item.svelte-1oef8d6 {
    background-color: white;
    padding: 10px;
    margin-bottom: 8px;
    border-radius: 4px;
    border-left: 3px solid #fab45a;
  }

  .incident-item.svelte-1oef8d6:last-child {
    margin-bottom: 0;
  }

  .incident-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    display: block;
    color: #333;
    margin-bottom: 4px;
    font-size: 0.9em;
  }

  .incident-item.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    display: block;
    color: #666;
    font-size: 0.8em;
    margin-bottom: 4px;
  }

  .incident-item.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
    display: block;
    color: #555;
    font-size: 0.85em;
    line-height: 1.4;
  }

  .no-incidents.svelte-1oef8d6 {
    text-align: center;
    padding: 20px;
    background-color: #e8f5e8;
    border-radius: 6px;
    color: #2e7d32;
    font-weight: 500;
  }

  .no-incidents.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0;
  }

  /* Student attendance specific styles */
  .attendance-details.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .attendance-item.svelte-1oef8d6 {
    background-color: white;
    padding: 12px;
    margin-bottom: 10px;
    border-radius: 4px;
    border-left: 3px solid #fab45a;
  }

  .attendance-item.svelte-1oef8d6:last-child {
    margin-bottom: 0;
  }

  .attendance-header.svelte-1oef8d6 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
  }

  .attendance-header.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    color: #333;
    font-size: 0.9em;
  }

  .attendance-rate.svelte-1oef8d6 {
    background-color: #fab45a;
    color: black;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .attendance-stats.svelte-1oef8d6 {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .attendance-stats.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    color: #666;
    font-size: 0.8em;
  }

  .attendance-stats.svelte-1oef8d6 .no-show:where(.svelte-1oef8d6) {
    color: #d32f2f;
    font-weight: 500;
  }

  .more-classes.svelte-1oef8d6 {
    text-align: center;
    padding: 10px;
    color: #666;
    font-style: italic;
  }

  /* Student feedback specific styles */
  .student-feedback.svelte-1oef8d6 {
    border-left-color: #2e7d32;
    background-color: #f8fff8;
  }

  .rating-info.svelte-1oef8d6 {
    display: flex;
    gap: 15px;
    margin-top: 6px;
    flex-wrap: wrap;
  }

  .rating-info.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    background-color: #e8f5e8;
    padding: 2px 6px;
    border-radius: 4px;
    color: #2e7d32;
    font-size: 0.75em;
  }

  .rating-info.svelte-1oef8d6 .punctuality-issue:where(.svelte-1oef8d6) {
    background-color: #ffebee;
    color: #d32f2f;
    font-weight: 500;
  }

  .more-reports.svelte-1oef8d6 {
    text-align: center;
    padding: 10px;
    color: #666;
    font-style: italic;
    background-color: #f0f8f0;
    border-radius: 4px;
    margin-top: 8px;
  }

  .missing-surveys.svelte-1oef8d6 {
    display: flex;
    flex-direction: column;
    gap: 1em;
  }

  .missing-item.svelte-1oef8d6 {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1em;
  }

  .missing-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    color: #dc2626;
  }

  .missing-badge.svelte-1oef8d6 {
    display: inline-block;
    background: #dc2626;
    color: white;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 0.5em;
  }

  .survey-ratings.svelte-1oef8d6 {
    display: flex;
    gap: 1em;
    margin-top: 0.5em;
    flex-wrap: wrap;
  }

  .survey-ratings.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-size: 0.8em;
    color: #0369a1;
  }

  /* Rating color classes */
  .rating-badge.svelte-1oef8d6 {
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-weight: 500;
    display: inline-block;
  }

  /* Override default survey-ratings span styles with rating colors */
  .survey-ratings.svelte-1oef8d6 .rating-badge.rating-1:where(.svelte-1oef8d6),
  .rating-badge.rating-1.svelte-1oef8d6 {
    background-color: #ffebee !important;
    border: 1px solid #ef5350 !important;
    color: #c62828 !important;
  }

  .survey-ratings.svelte-1oef8d6 .rating-badge.rating-2:where(.svelte-1oef8d6),
  .rating-badge.rating-2.svelte-1oef8d6 {
    background-color: #fff3e0 !important;
    border: 1px solid #ff9800 !important;
    color: #e65100 !important;
  }

  .survey-ratings.svelte-1oef8d6 .rating-badge.rating-3:where(.svelte-1oef8d6),
  .rating-badge.rating-3.svelte-1oef8d6 {
    background-color: #fffde7 !important;
    border: 1px solid #ffc107 !important;
    color: #f57f17 !important;
  }

  .survey-ratings.svelte-1oef8d6 .rating-badge.rating-4:where(.svelte-1oef8d6),
  .rating-badge.rating-4.svelte-1oef8d6 {
    background-color: #f1f8e9 !important;
    border: 1px solid #8bc34a !important;
    color: #558b2f !important;
  }

  .survey-ratings.svelte-1oef8d6 .rating-badge.rating-5:where(.svelte-1oef8d6),
  .rating-badge.rating-5.svelte-1oef8d6 {
    background-color: #e8f5e9 !important;
    border: 1px solid #4caf50 !important;
    color: #2e7d32 !important;
  }

  .class-details.svelte-1oef8d6 {
    margin-top: 0.5em;
    display: flex;
    flex-direction: column;
    gap: 0.25em;
  }

  .class-details.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 0.5em 0;
    font-style: italic;
    color: #555;
  }

  .more-classes.svelte-1oef8d6 {
    text-align: center;
    margin-top: 0.5em;
    padding-top: 0.5em;
    border-top: 1px solid #eee;
  }

  .more-classes.svelte-1oef8d6 .expand-button:where(.svelte-1oef8d6) {
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 8px 16px;
    cursor: pointer;
    font-size: 0.9em;
    color: #333;
    transition: all 0.2s ease;
  }

  .more-classes.svelte-1oef8d6 .expand-button:where(.svelte-1oef8d6):hover {
    background-color: #e8e8e8;
    border-color: #bbb;
  }

  .more-classes.svelte-1oef8d6 .expand-button:where(.svelte-1oef8d6):active {
    background-color: #ddd;
  }

  .responsibility-breakdown.svelte-1oef8d6 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 15px;
  }

  .teacher-incidents.svelte-1oef8d6,
  .student-incidents.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .student-incidents.svelte-1oef8d6 {
    border-left: 3px solid #fab45a;
  }

  .teacher-incidents.svelte-1oef8d6 {
    border-left: 3px solid #d32f2f;
  }

  .student-cancellation.svelte-1oef8d6 {
    background-color: #fff3e0;
    border-left-color: #fab45a;
  }

  .payment-note.svelte-1oef8d6 {
    background-color: #fab45a;
    color: black;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 4px;
    display: inline-block;
  }

  @media (max-width: 600px) {
    .teacher-performance-rating.svelte-1oef8d6 {
      padding: 1em;
    }

    .action-buttons.svelte-1oef8d6 {
      flex-direction: column;
    }

    .btn-submit.svelte-1oef8d6,
    .btn-clear.svelte-1oef8d6 {
      width: 100%;
    }

    .month-comparison.svelte-1oef8d6 {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .student-list.svelte-1oef8d6 {
      grid-template-columns: 1fr;
    }

    .metrics-grid.svelte-1oef8d6 {
      grid-template-columns: 1fr;
    }

    .comment-item.svelte-1oef8d6 {
      padding: 8px 0;
    }

    .comment-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6),
    .comment-item.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
      display: block;
      margin-bottom: 4px;
    }

    .weekly-trends.svelte-1oef8d6 {
      grid-template-columns: 1fr;
    }

    .week-stats.svelte-1oef8d6 {
      flex-direction: column;
      gap: 2px;
    }

    .week-stats.svelte-1oef8d6 .late-incidents:where(.svelte-1oef8d6) {
      font-size: 0.7em;
    }

    .incident-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6),
    .incident-item.svelte-1oef8d6 small:where(.svelte-1oef8d6),
    .incident-item.svelte-1oef8d6 span:where(.svelte-1oef8d6) {
      font-size: 0.85em;
    }

    .attendance-header.svelte-1oef8d6 {
      flex-direction: column;
      align-items: flex-start;
      gap: 4px;
    }

    .attendance-stats.svelte-1oef8d6 {
      gap: 1px;
    }

    .attendance-stats.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
      font-size: 0.75em;
    }

    .rating-info.svelte-1oef8d6 {
      flex-direction: column;
      gap: 4px;
    }

    .rating-info.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
      font-size: 0.7em;
    }

    .special-conditions-container.svelte-1oef8d6 {
      flex-direction: column;
      gap: 2px;
    }

    .special-condition.svelte-1oef8d6,
    .total-surcharge.svelte-1oef8d6 {
      font-size: 0.7em;
      padding: 1px 4px;
    }
  }

      .responsibility-breakdown.svelte-1oef8d6 {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .payment-breakdown-container.svelte-1oef8d6 {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .payment-section.svelte-1oef8d6 {
      padding: 12px;
    }

    .payment-section.svelte-1oef8d6 h5:where(.svelte-1oef8d6) {
      font-size: 0.95em;
    }

    .class-count-list.svelte-1oef8d6 li:where(.svelte-1oef8d6) {
      font-size: 0.85em;
      padding: 5px 0;
    }

    .total-classes.svelte-1oef8d6 {
      padding: 5px 6px;
      font-size: 0.85em;
    }

    .payment-total-only.svelte-1oef8d6 {
      padding: 10px;
      margin-top: 15px;
    }

    .payment-total-only.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
      font-size: 1em;
    }

  /* Payment analysis specific styles */
  .paid-class.svelte-1oef8d6 {
    background-color: #fab45a;
    color: black;
  }

  .free-class.svelte-1oef8d6 {
    background-color: #e8f5e8;
    color: #2e7d32;
    border: 1px solid #2e7d32;
  }

  /* Special conditions styling */
  .special-conditions-container.svelte-1oef8d6 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 4px;
  }

  .special-condition.svelte-1oef8d6 {
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    display: inline-block;
  }

  .ib-condition.svelte-1oef8d6 {
    background-color: #e3f2fd;
    color: #1976d2;
    border: 1px solid #1976d2;
  }

  .special-needs-condition.svelte-1oef8d6 {
    background-color: #fff3e0;
    color: #f57c00;
    border: 1px solid #f57c00;
  }

  .lithuanian-condition.svelte-1oef8d6 {
    background-color: #e8f5e8;
    color: #2e7d32;
    border: 1px solid #2e7d32;
  }

  .total-surcharge.svelte-1oef8d6 {
    background-color: #fab45a;
    color: black;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: bold;
    display: inline-block;
    border: 2px solid #e09a43;
  }

  /* Legacy IB class styling for backwards compatibility */
  .ib-class.svelte-1oef8d6 {
    background-color: #e3f2fd;
    color: #1976d2;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 2px;
    display: inline-block;
  }

  .free-reason.svelte-1oef8d6 {
    background-color: #ffebee;
    color: #d32f2f;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 2px;
    display: inline-block;
  }

  .first-time.svelte-1oef8d6 {
    background-color: #fff3e0;
    color: #f57c00;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    margin-top: 2px;
    display: inline-block;
  }

  .retained.svelte-1oef8d6 {
    background-color: #e8f5e8;
    color: #2e7d32;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    margin-top: 2px;
    display: inline-block;
  }

  /* Upcoming classes styling */
  .upcoming-class.svelte-1oef8d6 {
    opacity: 0.7;
    background-color: #f8f9fa;
    border-left: 4px solid #6c757d;
  }

  .upcoming-class.svelte-1oef8d6:hover {
    opacity: 0.9;
  }

  /* Class status and payment layout */
  .class-status-payment.svelte-1oef8d6 {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .class-status.svelte-1oef8d6 {
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    text-transform: uppercase;
  }

  .class-status.completed.svelte-1oef8d6 {
    background-color: #d4edda;
    color: #155724;
  }

  .class-status.upcoming.svelte-1oef8d6 {
    background-color: #fff3cd;
    color: #856404;
  }

  /* Teacher Attendance Status Styles */
  .attendance-status.svelte-1oef8d6 {
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 600;
    text-transform: uppercase;
  }

  .attendance-status.attended.svelte-1oef8d6,
  .attendance-status.on_time.svelte-1oef8d6 {
    background-color: #d4edda;
    color: #155724;
  }

  .attendance-status.late.svelte-1oef8d6 {
    background-color: #fff3cd;
    color: #856404;
  }

  .attendance-status.no_show.svelte-1oef8d6 {
    background-color: #f8d7da;
    color: #721c24;
  }

  /* Student rating summary styles */
  .student-rating-summary.svelte-1oef8d6 {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-top: 15px;
  }

  .rating-display.svelte-1oef8d6 {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 15px;
  }

  .rating-value.svelte-1oef8d6 {
    font-size: 2.5em;
    color: #fab45a;
    font-weight: bold;
    min-width: 120px;
  }

  .rating-details.svelte-1oef8d6 {
    flex: 1;
  }

  .rating-details.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 5px 0;
    color: #666;
  }

  .rating-details.svelte-1oef8d6 p:where(.svelte-1oef8d6):first-child {
    font-weight: bold;
    color: #333;
    font-size: 1.1em;
  }

  .rating-bar-container.svelte-1oef8d6 {
    width: 100%;
  }

  @media (max-width: 600px) {
    .rating-display.svelte-1oef8d6 {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }

    .rating-value.svelte-1oef8d6 {
      font-size: 2em;
      min-width: auto;
    }

    .student-rating-summary.svelte-1oef8d6 {
      padding: 15px;
    }
  }

  .bonus-eligibility-banner.svelte-1oef8d6 {
    margin-top: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .bonus-eligibility-banner.not-eligible.svelte-1oef8d6 {
    border-left: 4px solid #d32f2f;
    background-color: #fff3e0;
  }

  .bonus-icon.svelte-1oef8d6 {
    font-size: 2em;
    color: #fab45a;
  }

  .bonus-message.svelte-1oef8d6 h4:where(.svelte-1oef8d6) {
    margin: 0 0 5px 0;
    color: #333;
  }

  .bonus-message.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 5px 0;
    color: #666;
  }

  .bonus-message.svelte-1oef8d6 small:where(.svelte-1oef8d6) {
    color: #888;
    font-size: 0.9em;
  }

  .criteria-breakdown.svelte-1oef8d6 {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .criterion-item.svelte-1oef8d6 {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
  }

  .criterion-name.svelte-1oef8d6 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
  }

  .criterion-status.svelte-1oef8d6 {
    font-size: 1.2em;
    font-weight: bold;
  }

  .criterion-status.met.svelte-1oef8d6 {
    color: #4caf50;
  }

  .criterion-status.not-met.svelte-1oef8d6 {
    color: #d32f2f;
  }

  .criterion-details.svelte-1oef8d6 p:where(.svelte-1oef8d6) {
    margin: 5px 0;
    color: #666;
  }

    .criterion-value.svelte-1oef8d6 {
    font-weight: bold;
    color: #333;
  }

  @media (max-width: 768px) {
    .bonus-eligibility-banner.svelte-1oef8d6 {
      flex-direction: column;
      text-align: center;
      gap: 15px;
    }

    .bonus-icon.svelte-1oef8d6 {
      font-size: 1.5em;
    }
  }

  /* Tab Navigation Styles */
  .tab-navigation.svelte-1oef8d6 {
    display: flex;
    gap: 10px;
    margin-bottom: 2em;
    border-bottom: 2px solid #ddd;
  }

  .tab-button.svelte-1oef8d6 {
    padding: 12px 24px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 1em;
    font-weight: 500;
    color: #666;
    border-bottom: 3px solid transparent;
    transition: all 0.2s;
  }

  .tab-button.svelte-1oef8d6:hover {
    color: #fab45a;
  }

  .tab-button.active.svelte-1oef8d6 {
    color: #fab45a;
    border-bottom-color: #fab45a;
  }

  /* Dashboard Tab Styles */
  .dashboard-tab.svelte-1oef8d6 {
    padding: 1em 0;
  }

  .dashboard-controls.svelte-1oef8d6 {
    margin-bottom: 2em;
  }

  .dashboard-month-selector.svelte-1oef8d6 {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-top: 0.5em;
  }

  .btn-load-dashboard.svelte-1oef8d6 {
    padding: 0.75em 1.5em;
    background: #fab45a;
    color: black;
    border: none;
    border-radius: 6px;
    font-size: 1em;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
  }

  .btn-load-dashboard.svelte-1oef8d6:hover:not(:disabled) {
    background: #e09a43;
    transform: translateY(-1px);
  }

  .btn-load-dashboard.svelte-1oef8d6:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-recalculate-dashboard.svelte-1oef8d6 {
    padding: 0.75em 1.5em;
    background: #28a745;
    color: white;
    border: none;
    border-radius: 6px;
    font-size: 1em;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
  }

  .btn-recalculate-dashboard.svelte-1oef8d6:hover:not(:disabled) {
    background: #218838;
    transform: translateY(-1px);
  }

  .btn-recalculate-dashboard.svelte-1oef8d6:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
  }

  .dashboard-summary.svelte-1oef8d6 {
    background: #f8f9fa;
    padding: 1.5em;
    border-radius: 8px;
    margin-bottom: 2em;
  }

  .dashboard-summary.svelte-1oef8d6 h3:where(.svelte-1oef8d6) {
    margin: 0 0 1em 0;
    color: #333;
  }

  .summary-stats.svelte-1oef8d6 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1em;
  }

  .stat-item.svelte-1oef8d6 {
    background: white;
    padding: 1em;
    border-radius: 6px;
    border-left: 3px solid #fab45a;
  }

  .stat-item.svelte-1oef8d6 strong:where(.svelte-1oef8d6) {
    display: block;
    margin-bottom: 0.5em;
    color: #666;
    font-size: 0.9em;
  }

  /* Table Styles */
  .snapshots-table-container.svelte-1oef8d6 {
    overflow-x: visible;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    width: 100%;
  }

  .snapshots-table.svelte-1oef8d6 {
    width: 100%;
    border-collapse: collapse;
    font-size: 1em;
    table-layout: auto;
  }

  .snapshots-table.svelte-1oef8d6 thead:where(.svelte-1oef8d6) {
    background: #fab45a;
    color: black;
  }

  .snapshots-table.svelte-1oef8d6 th:where(.svelte-1oef8d6) {
    padding: 12px 12px;
    text-align: left;
    font-weight: 600;
    border-bottom: 2px solid #e09a43;
  }

  .snapshots-table.svelte-1oef8d6 td:where(.svelte-1oef8d6) {
    padding: 10px 12px;
    border-bottom: 1px solid #e9ecef;
  }

  .snapshots-table.svelte-1oef8d6 tbody:where(.svelte-1oef8d6) tr:where(.svelte-1oef8d6):hover {
    background: #f8f9fa;
  }

  .snapshots-table.svelte-1oef8d6 tbody:where(.svelte-1oef8d6) tr.finalized:where(.svelte-1oef8d6) {
    background: #e8f5e8;
  }

  .snapshots-table.svelte-1oef8d6 tbody:where(.svelte-1oef8d6) tr.finalized:where(.svelte-1oef8d6):hover {
    background: #d4edda;
  }

  .teacher-name.svelte-1oef8d6 {
    font-weight: 500;
    color: #333;
  }

  .currency.svelte-1oef8d6 {
    text-align: right;
    font-family: 'Courier New', monospace;
  }

  .number.svelte-1oef8d6 {
    text-align: center;
  }

  .total-cell.svelte-1oef8d6 {
    background: #fff3e0;
    font-weight: bold;
  }

  .bonus-cell.svelte-1oef8d6 {
    text-align: center;
  }

  .bonus-yes.svelte-1oef8d6 {
    color: #2e7d32;
    font-weight: 500;
  }

  .bonus-no.svelte-1oef8d6 {
    color: #999;
  }

  .status-cell.svelte-1oef8d6 {
    text-align: center;
  }

  .status-finalized.svelte-1oef8d6 {
    background: #d4edda;
    color: #155724;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.8em;
    font-weight: 600;
  }

  .status-draft.svelte-1oef8d6 {
    background: #fff3cd;
    color: #856404;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.8em;
    font-weight: 600;
  }

  .snapshots-table.svelte-1oef8d6 tfoot:where(.svelte-1oef8d6) {
    background: #f8f9fa;
    font-weight: bold;
  }

  .totals-row.svelte-1oef8d6 td:where(.svelte-1oef8d6) {
    padding: 15px 8px;
    border-top: 2px solid #fab45a;
  }



  .teacher-invoice-container.svelte-1vls63f {
    margin-top: 2em;
    padding: 15px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
  }

  .teacher-invoice-container.svelte-1vls63f h3:where(.svelte-1vls63f) {
    margin: 0 0 15px 0;
    color: #fab45a;
    font-size: 1.2em;
  }

  .teacher-invoice-container.svelte-1vls63f h4:where(.svelte-1vls63f) {
    margin: 20px 0 10px 0;
    color: #333;
    font-size: 1.1em;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
  }

  .description.svelte-1vls63f {
    color: #666;
    margin-bottom: 20px;
    font-size: 0.9em;
  }

  .error-message.svelte-1vls63f {
    color: #d32f2f;
    background: #ffebee;
    padding: 12px;
    border-radius: 6px;
    border-left: 4px solid #d32f2f;
    margin-bottom: 20px;
    font-size: 0.9em;
  }

  .success-message.svelte-1vls63f {
    color: #2e7d32;
    background: #e8f5e8;
    padding: 12px;
    border-radius: 6px;
    border-left: 4px solid #2e7d32;
    margin-bottom: 20px;
    font-size: 0.9em;
  }

  .selection-section.svelte-1vls63f {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .input-container.svelte-1vls63f {
    position: relative;
    margin-top: 15px;
  }

  .search-input.svelte-1vls63f {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
  }

  .search-input.svelte-1vls63f:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .autocomplete-list.svelte-1vls63f {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 6px 6px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  }

  .autocomplete-list.svelte-1vls63f li:where(.svelte-1vls63f) {
    border-bottom: 1px solid #f0f0f0;
  }

  .autocomplete-list.svelte-1vls63f li:where(.svelte-1vls63f):last-child {
    border-bottom: none;
  }

  .autocomplete-list.svelte-1vls63f button:where(.svelte-1vls63f) {
    width: 100%;
    padding: 12px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .autocomplete-list.svelte-1vls63f button:where(.svelte-1vls63f):hover {
    background-color: #f8f9fa;
  }

  .teacher-option.svelte-1vls63f {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .teacher-name.svelte-1vls63f {
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
  }

  .teacher-email.svelte-1vls63f {
    color: #666;
    font-size: 0.8em;
  }

  .selected-teacher.svelte-1vls63f {
    margin-top: 20px;
    padding: 15px;
    background-color: #fff3e0;
    border: 2px solid #fab45a;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
  }

  .selected-teacher-info.svelte-1vls63f h5:where(.svelte-1vls63f) {
    margin: 0 0 10px 0;
    color: #fab45a;
    font-size: 1em;
  }

  .selected-teacher-info.svelte-1vls63f p:where(.svelte-1vls63f) {
    margin: 5px 0;
    font-size: 0.9em;
  }

  .selected-teacher-info.svelte-1vls63f p:where(.svelte-1vls63f) strong:where(.svelte-1vls63f) {
    color: #333;
  }

  .btn-clear-small.svelte-1vls63f {
    padding: 8px 16px;
    background-color: #6c757d;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.85em;
    white-space: nowrap;
  }

  .btn-clear-small.svelte-1vls63f:hover {
    background-color: #545b62;
  }

  .month-select.svelte-1vls63f {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    margin-top: 10px;
  }

  .month-select.svelte-1vls63f:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .selected-info-section.svelte-1vls63f {
    background-color: #fff3e0;
    border: 2px solid #fab45a;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .info-grid.svelte-1vls63f {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    font-size: 0.9em;
  }

  .info-grid.svelte-1vls63f div:where(.svelte-1vls63f) strong:where(.svelte-1vls63f) {
    color: #fab45a;
  }

  .classes-found.svelte-1vls63f {
    background-color: #e8f5e8;
    padding: 12px;
    border-radius: 6px;
    margin-bottom: 15px;
    text-align: center;
  }

  .classes-found.svelte-1vls63f p:where(.svelte-1vls63f) {
    margin: 0;
    color: #2e7d32;
  }

  .price-info.svelte-1vls63f {
    background-color: #fab45a;
    color: black;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 500;
  }

  .instruction-message.svelte-1vls63f {
    text-align: center;
    padding: 20px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 2px dashed #ddd;
    margin: 20px 0;
  }

  .instruction-message.svelte-1vls63f p:where(.svelte-1vls63f) {
    margin: 0;
    color: #666;
    font-size: 1em;
  }



  .loading-message.svelte-1vls63f {
    text-align: center;
    padding: 20px;
    color: #fab45a;
    font-size: 1em;
  }

  .classes-section.svelte-1vls63f {
    margin-bottom: 20px;
  }

  .select-all-container.svelte-1vls63f {
    margin-bottom: 15px;
    padding: 10px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .select-all-label.svelte-1vls63f {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    cursor: pointer;
    font-size: 0.9em;
  }

  .classes-list.svelte-1vls63f {
    max-height: 400px;
    overflow-y: auto;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 10px;
    background-color: #fafafa;
  }

  .class-item.svelte-1vls63f {
    margin-bottom: 8px;
    padding: 10px;
    background-color: white;
    border-radius: 4px;
    border: 1px solid #e9ecef;
    transition: background-color 0.2s;
  }

  .class-item.svelte-1vls63f:hover {
    background-color: #f8f9fa;
  }

  .class-item.svelte-1vls63f:last-child {
    margin-bottom: 0;
  }

  .class-label.svelte-1vls63f {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    width: 100%;
  }

  .class-info.svelte-1vls63f {
    flex-grow: 1;
  }

  .class-name.svelte-1vls63f {
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
    margin-bottom: 4px;
  }

  .class-details.svelte-1vls63f {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
  }

  .class-details.svelte-1vls63f small:where(.svelte-1vls63f) {
    color: #666;
    font-size: 0.8em;
  }

  .actions-section.svelte-1vls63f {
    margin-top: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .selection-summary.svelte-1vls63f {
    margin-bottom: 15px;
    text-align: center;
    color: #fab45a;
    font-size: 1em;
  }

  .action-buttons.svelte-1vls63f {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
  }

  .btn.svelte-1vls63f {
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
    text-decoration: none;
    display: inline-block;
  }

  .btn.svelte-1vls63f:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-primary.svelte-1vls63f {
    background-color: #fab45a;
    color: black;
  }

  .btn-primary.svelte-1vls63f:hover:not(:disabled) {
    background-color: #e09a43;
  }

  .btn-secondary.svelte-1vls63f {
    background-color: #6c757d;
    color: white;
  }

  .btn-secondary.svelte-1vls63f:hover:not(:disabled) {
    background-color: #545b62;
  }

  .btn-success.svelte-1vls63f {
    background-color: #28a745;
    color: white;
  }

  .btn-success.svelte-1vls63f:hover {
    background-color: #218838;
  }

  .no-classes.svelte-1vls63f {
    text-align: center;
    padding: 40px 20px;
    color: #666;
    font-style: italic;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .invoice-preview-section.svelte-1vls63f {
    margin-top: 30px;
    padding: 20px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 2px solid #fab45a;
  }

  .invoice-summary.svelte-1vls63f {
    margin-bottom: 20px;
  }

  .summary-grid.svelte-1vls63f {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    background-color: white;
    padding: 15px;
    border-radius: 6px;
  }

  .summary-item.svelte-1vls63f {
    font-size: 0.9em;
  }

  .summary-item.svelte-1vls63f strong:where(.svelte-1vls63f) {
    color: #fab45a;
  }

  .pdf-preview-container.svelte-1vls63f {
    margin-bottom: 20px;
  }

  .pdf-preview.svelte-1vls63f {
    width: 100%;
    height: 500px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background-color: white;
  }

  .download-actions.svelte-1vls63f {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
  }

  /* Mobile responsiveness */
  @media (max-width: 600px) {
    .teacher-invoice-container.svelte-1vls63f {
      padding: 12px;
      margin-top: 1em;
    }

    .selection-section.svelte-1vls63f {
      padding: 15px;
    }

    .info-grid.svelte-1vls63f {
      grid-template-columns: 1fr;
      gap: 8px;
    }

    .selected-teacher.svelte-1vls63f {
      flex-direction: column;
      gap: 10px;
    }

    .autocomplete-list.svelte-1vls63f {
      max-height: 150px;
    }

    .action-buttons.svelte-1vls63f,
    .download-actions.svelte-1vls63f {
      flex-direction: column;
    }

    .btn.svelte-1vls63f {
      width: 100%;
      margin-bottom: 8px;
    }

    .summary-grid.svelte-1vls63f {
      grid-template-columns: 1fr;
      gap: 8px;
    }

    .class-details.svelte-1vls63f {
      flex-direction: column;
      gap: 4px;
    }

    .pdf-preview.svelte-1vls63f {
      height: 400px;
    }

    .classes-list.svelte-1vls63f {
      max-height: 300px;
    }
  }

  /* Custom Sum Section Styles */
  .custom-sum-section.svelte-1vls63f {
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 20px;
    margin: 20px 0;
  }

  .custom-sum-section.svelte-1vls63f h5:where(.svelte-1vls63f) {
    margin: 0 0 15px 0;
    color: #495057;
    font-size: 1.1em;
  }

  .custom-sum-input-group.svelte-1vls63f {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 10px;
  }

  .custom-sum-input.svelte-1vls63f {
    flex: 1;
    padding: 8px 12px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 16px;
    max-width: 200px;
  }

  .custom-sum-input.svelte-1vls63f:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .custom-sum-note.svelte-1vls63f {
    margin: 0;
    font-size: 0.85em;
    color: #6c757d;
    font-style: italic;
  }

  @media (max-width: 600px) {
    .custom-sum-input-group.svelte-1vls63f {
      flex-direction: column;
      align-items: stretch;
    }

    .custom-sum-input.svelte-1vls63f {
      max-width: none;
      margin-bottom: 10px;
    }
  }


  .teacher-info-container.svelte-4qvgim {
    padding: 20px;
    max-width: 1200px;
    margin: 0 auto;
  }

  .teacher-info-container.embedded.svelte-4qvgim {
    padding: 0;
    max-width: none;
    margin: 0;
  }

  .selection-section.svelte-4qvgim {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .selection-section.svelte-4qvgim h4:where(.svelte-4qvgim) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.1em;
  }

  .month-selection.svelte-4qvgim {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
  }

  .month-selector-container.svelte-4qvgim {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .selector-label.svelte-4qvgim {
    font-weight: 600;
    color: #555;
    font-size: 0.95em;
  }

  .month-select.svelte-4qvgim,
  .year-select.svelte-4qvgim {
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
    transition: border-color 0.2s;
  }

  .month-select.svelte-4qvgim {
    min-width: 130px;
  }

  .year-select.svelte-4qvgim {
    min-width: 90px;
  }

  .month-select.svelte-4qvgim:focus,
  .year-select.svelte-4qvgim:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .month-select.svelte-4qvgim:hover,
  .year-select.svelte-4qvgim:hover {
    border-color: #fab45a;
  }

  .selected-period.svelte-4qvgim {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background-color: #fff3e0;
    border: 2px solid #fab45a;
    border-radius: 6px;
    margin-left: auto;
  }

  .period-label.svelte-4qvgim {
    font-weight: 500;
    color: #666;
    font-size: 0.9em;
  }

  .period-value.svelte-4qvgim {
    font-weight: 600;
    color: #fab45a;
    font-size: 1em;
  }

  .input-container.svelte-4qvgim {
    position: relative;
    margin-top: 15px;
  }

  .search-input.svelte-4qvgim {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
  }

  .search-input.svelte-4qvgim:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .autocomplete-list.svelte-4qvgim {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 6px 6px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  }

  .autocomplete-list.svelte-4qvgim li:where(.svelte-4qvgim) {
    border-bottom: 1px solid #f0f0f0;
  }

  .autocomplete-list.svelte-4qvgim li:where(.svelte-4qvgim):last-child {
    border-bottom: none;
  }

  .autocomplete-list.svelte-4qvgim button:where(.svelte-4qvgim) {
    width: 100%;
    padding: 12px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .autocomplete-list.svelte-4qvgim button:where(.svelte-4qvgim):hover {
    background-color: #f8f9fa;
  }

  .teacher-option.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .teacher-name.svelte-4qvgim {
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
  }

  .teacher-email.svelte-4qvgim {
    color: #666;
    font-size: 0.8em;
  }

  .selected-teacher.svelte-4qvgim {
    margin-top: 20px;
    padding: 15px;
    background-color: #fff3e0;
    border: 2px solid #fab45a;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
  }

  .selected-teacher-info.svelte-4qvgim h5:where(.svelte-4qvgim) {
    margin: 0 0 10px 0;
    color: #fab45a;
    font-size: 1em;
  }

  .selected-teacher-info.svelte-4qvgim p:where(.svelte-4qvgim) {
    margin: 5px 0;
    font-size: 0.9em;
  }

  .selected-teacher-info.svelte-4qvgim p:where(.svelte-4qvgim) strong:where(.svelte-4qvgim) {
    color: #333;
  }

  .btn-clear-small.svelte-4qvgim {
    padding: 8px 16px;
    background-color: #6c757d;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.85em;
    white-space: nowrap;
  }

  .btn-clear-small.svelte-4qvgim:hover {
    background-color: #545b62;
  }

  .teacher-info-container.svelte-4qvgim h3:where(.svelte-4qvgim) {
    margin: 0 0 20px 0;
    color: #333;
    border-bottom: 2px solid #fab45a;
    padding-bottom: 10px;
  }

  .error-message.svelte-4qvgim {
    background-color: #f8d7da;
    color: #721c24;
    padding: 10px;
    border: 1px solid #f5c6cb;
    border-radius: 5px;
    margin-bottom: 20px;
  }

  .loading.svelte-4qvgim {
    text-align: center;
    padding: 20px;
    color: #666;
    font-style: italic;
  }

  .teacher-overview.svelte-4qvgim {
    background: #fff;
    border: 2px solid #fab45a;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .teacher-overview.svelte-4qvgim h4:where(.svelte-4qvgim) {
    margin: 0 0 20px 0;
    color: #fab45a;
    font-size: 1.2em;
    border-bottom: 2px solid #fab45a;
    padding-bottom: 10px;
  }

  .overview-section.svelte-4qvgim {
    margin-bottom: 20px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 6px;
  }

  .overview-section.svelte-4qvgim h5:where(.svelte-4qvgim) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.1em;
  }

  .overview-grid.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
  }

  .overview-item.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: white;
    border-radius: 4px;
    border-left: 4px solid #fab45a;
  }

  .overview-label.svelte-4qvgim {
    font-weight: 600;
    color: #555;
  }

  .overview-value.svelte-4qvgim {
    font-weight: bold;
    color: #fab45a;
  }

  .subjects-overview.svelte-4qvgim {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  .subject-badge.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    background: #fab45a;
    color: black;
    border-radius: 6px;
    min-width: 100px;
  }

  .subject-name.svelte-4qvgim {
    font-weight: bold;
    font-size: 0.9em;
  }

  .subject-count.svelte-4qvgim {
    font-size: 0.8em;
    opacity: 0.8;
  }

  .students-overview.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 10px;
  }

  .student-item.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: white;
    border-radius: 4px;
    border: 1px solid #ddd;
  }

  .student-name.svelte-4qvgim {
    font-weight: 500;
    color: #333;
  }

  .student-details.svelte-4qvgim {
    color: #666;
    font-size: 0.8em;
  }

  .available-slots.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .slot-item.svelte-4qvgim {
    display: grid;
    grid-template-columns: 100px 140px 1fr auto;
    align-items: center;
    padding: 10px;
    border-radius: 4px;
    gap: 10px;
  }

  .slot-item.available.svelte-4qvgim {
    background: #d4edda;
    border: 1px solid #c3e6cb;
  }

  .slot-day.svelte-4qvgim {
    font-weight: 600;
    color: #333;
  }

  .slot-time.svelte-4qvgim {
    font-family: monospace;
    color: #555;
  }

  .slot-status.svelte-4qvgim {
    color: #155724;
    font-weight: 500;
  }

  .no-slots.svelte-4qvgim {
    color: #666;
    font-style: italic;
    margin: 0;
    text-align: center;
    padding: 20px;
  }

  /* Teacher Comments Styles */
  .teacher-comments.svelte-4qvgim {
    background: #f8f9fa;
    border: 2px solid #fab45a;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .teacher-comments.svelte-4qvgim h4:where(.svelte-4qvgim) {
    margin: 0 0 15px 0;
    color: #fab45a;
    font-size: 1.2em;
    border-bottom: 2px solid #fab45a;
    padding-bottom: 10px;
  }

  .comments-summary.svelte-4qvgim {
    margin-bottom: 20px;
    padding: 15px;
    background: white;
    border-radius: 6px;
    border-left: 4px solid #fab45a;
  }

  .summary-header.svelte-4qvgim {
    font-size: 1.1em;
    color: #fab45a;
    margin-bottom: 5px;
  }

  .comments-summary.svelte-4qvgim p:where(.svelte-4qvgim) {
    margin: 0;
    color: #666;
    font-size: 0.9em;
  }

  .comments-section.svelte-4qvgim {
    margin-bottom: 20px;
    padding: 15px;
    background: white;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  }

  .comments-section.svelte-4qvgim h5:where(.svelte-4qvgim) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.1em;
    border-bottom: 1px solid #eee;
    padding-bottom: 8px;
  }

  .month-comparison.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
  }

  .month-data.svelte-4qvgim {
    background: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #fab45a;
  }

  .month-data.svelte-4qvgim h6:where(.svelte-4qvgim) {
    margin: 0 0 12px 0;
    color: #fab45a;
    font-size: 1em;
    font-weight: 600;
  }

  .month-data.svelte-4qvgim ul:where(.svelte-4qvgim) {
    margin: 0;
    padding-left: 15px;
  }

  .month-data.svelte-4qvgim li:where(.svelte-4qvgim) {
    margin-bottom: 8px;
    color: #555;
    font-size: 0.9em;
  }

  .metrics-grid.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 15px;
  }

  .metric-item.svelte-4qvgim {
    background: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #fab45a;
  }

  .metric-item.svelte-4qvgim strong:where(.svelte-4qvgim) {
    display: block;
    margin-bottom: 10px;
    color: #333;
    font-size: 0.95em;
  }

  .metric-bar.svelte-4qvgim {
    background: #e9ecef;
    border-radius: 10px;
    height: 8px;
    margin-bottom: 8px;
    overflow: hidden;
  }

  .metric-fill.svelte-4qvgim {
    background: linear-gradient(90deg, #fab45a, #e09a43);
    height: 100%;
    transition: width 0.3s ease;
  }

  .metric-item.svelte-4qvgim small:where(.svelte-4qvgim) {
    color: #666;
    font-size: 0.8em;
  }

  .sample-comments.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .comment-item.svelte-4qvgim {
    padding: 12px;
    background: #f8f9fa;
    border-radius: 6px;
    border-left: 4px solid #fab45a;
  }

  .comment-item.svelte-4qvgim strong:where(.svelte-4qvgim) {
    color: #fab45a;
    font-size: 0.9em;
  }

  .comment-item.svelte-4qvgim span:where(.svelte-4qvgim) {
    color: #555;
    font-style: italic;
    margin-left: 8px;
  }

  .week-classes.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .class-item.svelte-4qvgim {
    display: grid;
    grid-template-columns: 200px 1fr auto;
    align-items: center;
    padding: 12px;
    border-radius: 6px;
    gap: 15px;
    border: 2px solid transparent;
  }

  .class-item.in-timeslot.svelte-4qvgim {
    background: #d1ecf1;
    border-color: #17a2b8;
  }

  .class-item.outside-timeslot.svelte-4qvgim {
    background: #f8d7da;
    border-color: #dc3545;
  }

  .class-time.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .class-day.svelte-4qvgim {
    font-weight: 600;
    color: #333;
    font-size: 0.9em;
  }

  .class-datetime.svelte-4qvgim {
    font-family: monospace;
    color: #555;
    font-size: 0.85em;
  }

  .class-details.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .class-name.svelte-4qvgim {
    font-weight: 500;
    color: #333;
    font-size: 0.95em;
  }

  .class-student.svelte-4qvgim {
    color: #666;
    font-size: 0.85em;
  }

  .timeslot-indicator.svelte-4qvgim {
    background: #17a2b8;
    color: white;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75em;
    font-weight: 500;
    white-space: nowrap;
  }

  .outside-indicator.svelte-4qvgim {
    background: #dc3545;
    color: white;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75em;
    font-weight: 500;
    white-space: nowrap;
  }

  /* Teaching Start Date styles */
  .teaching-start-info.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .start-date-item.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px;
    background: white;
    border-radius: 6px;
    border-left: 4px solid #fab45a;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  }

  .start-date-label.svelte-4qvgim {
    font-weight: 600;
    color: #555;
  }

  .start-date-value.svelte-4qvgim {
    font-weight: bold;
    color: #fab45a;
    font-size: 1.05em;
  }

  .no-start-date.svelte-4qvgim {
    color: #666;
    font-style: italic;
    margin: 0;
    text-align: center;
    padding: 20px;
  }

  .teacher-details.svelte-4qvgim {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
  }

  .teacher-details-header.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 10px;
  }

  .teacher-details.svelte-4qvgim h4:where(.svelte-4qvgim) {
    margin: 0;
    color: #333;
    font-size: 1.2em;
  }

  .edit-controls.svelte-4qvgim {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .btn.svelte-4qvgim {
    padding: 8px 16px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
    text-decoration: none;
    display: inline-block;
  }

  .btn.svelte-4qvgim:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-primary.svelte-4qvgim {
    background-color: #fab45a;
    color: black;
  }

  .btn-primary.svelte-4qvgim:hover:not(:disabled) {
    background-color: #e09a43;
  }

  .btn-secondary.svelte-4qvgim {
    background-color: #6c757d;
    color: white;
  }

  .btn-secondary.svelte-4qvgim:hover:not(:disabled) {
    background-color: #545b62;
  }

  .btn-danger.svelte-4qvgim {
    background-color: #dc3545;
    color: white;
  }

  .btn-danger.svelte-4qvgim:hover:not(:disabled) {
    background-color: #c82333;
  }

  .btn-small.svelte-4qvgim {
    padding: 6px 12px;
    font-size: 0.8em;
  }

  .edit-input.svelte-4qvgim {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 0.9em;
  }

  .edit-input.svelte-4qvgim:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .info-section.svelte-4qvgim {
    margin-bottom: 25px;
    background: white;
    padding: 15px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  }

  .info-section.svelte-4qvgim h5:where(.svelte-4qvgim) {
    margin: 0 0 15px 0;
    color: #fab45a;
    font-size: 1.1em;
    border-bottom: 1px solid #eee;
    padding-bottom: 5px;
  }

  .info-grid.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
  }

  .info-item.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .info-item.svelte-4qvgim:last-child {
    border-bottom: none;
  }

  .qr-code-admin-item.svelte-4qvgim {
    flex-wrap: wrap;
    gap: 10px;
  }

  .qr-code-admin-preview.svelte-4qvgim {
    margin-top: 16px;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #f8f9fa;
  }

  .qr-code-admin-preview.svelte-4qvgim img:where(.svelte-4qvgim) {
    display: block;
    max-width: 100%;
    max-height: 600px;
    margin: 0 auto 12px;
    object-fit: contain;
  }

  .qr-code-admin-error.svelte-4qvgim {
    margin-top: 12px;
    color: #c0392b;
    font-weight: 600;
  }

  .label.svelte-4qvgim {
    font-weight: 600;
    color: #555;
    min-width: 140px;
  }

  .value.svelte-4qvgim {
    color: #333;
    text-align: right;
    flex: 1;
    word-break: break-word;
  }

  .timeslots-grid.svelte-4qvgim {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
  }

  .timeslot-item.svelte-4qvgim {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    padding: 10px;
    text-align: center;
  }

  .day.svelte-4qvgim {
    display: block;
    font-weight: 600;
    color: #fab45a;
    margin-bottom: 5px;
  }

  .time.svelte-4qvgim {
    display: block;
    color: #666;
    font-size: 0.9em;
  }

  .no-data.svelte-4qvgim {
    color: #666;
    font-style: italic;
    margin: 0;
  }


  .timeslots-header.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
  }

  .timeslots-edit.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .timeslot-edit-item.svelte-4qvgim {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 6px;
    flex-wrap: wrap;
  }

  .day-select.svelte-4qvgim {
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 0.9em;
    min-width: 120px;
  }

  .time-input.svelte-4qvgim {
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 0.9em;
    min-width: 100px;
  }

  .day-select.svelte-4qvgim:focus,
  .time-input.svelte-4qvgim:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  /* New styles for detailed teacher info */
  .teacher-info-detailed.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .info-description.svelte-4qvgim {
    margin: 0 0 10px 0;
    font-weight: 600;
    color: #555;
    font-size: 0.95em;
  }

  .subject-grade-combo.svelte-4qvgim {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    padding: 15px;
    border-left: 4px solid #fab45a;
  }

  .combo-header.svelte-4qvgim {
    margin-bottom: 10px;
  }

  .combo-title.svelte-4qvgim {
    font-weight: 600;
    color: #fab45a;
    font-size: 0.9em;
  }

  .combo-details.svelte-4qvgim {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .combo-item.svelte-4qvgim {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
  }

  .combo-label.svelte-4qvgim {
    font-weight: 500;
    color: #666;
    min-width: 100px;
  }

  .combo-value.svelte-4qvgim {
    color: #333;
    text-align: right;
    flex: 1;
    word-break: break-word;
  }

  .student-count-item.svelte-4qvgim {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #eee;
  }

  /* Subject editing styles adapted from AccountPage */
  .info-item-full-width.svelte-4qvgim {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .subjects-container.svelte-4qvgim {
    max-height: 180px;
    overflow-y: auto;
    overflow-x: hidden;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 12px;
    background-color: #f8f9fa;
    margin-top: 8px;
    overscroll-behavior: contain;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    user-select: none;
  }

  .subject-item.svelte-4qvgim {
    margin-bottom: 6px;
    background-color: white;
    border-radius: 6px;
    border: 1px solid #f0f0f0;
    transition: background-color 0.2s;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
  }

  .subject-item.svelte-4qvgim:hover {
    background-color: #f5f5f5;
    border-color: #e0e0e0;
  }

  .subject-label.svelte-4qvgim {
    display: flex;
    align-items: center;
    padding: 8px;
    cursor: pointer;
    width: 100%;
    position: relative;
  }

  .subject-label.svelte-4qvgim input[type="checkbox"]:where(.svelte-4qvgim) {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }

  .checkmark.svelte-4qvgim {
    height: 24px;
    width: 24px;
    background-color: white;
    border: 2px solid #333;
    border-radius: 6px;
    margin-right: 12px;
    position: relative;
    transition: all 0.3s ease;
    flex-shrink: 0;
  }

  .subject-label.svelte-4qvgim input:where(.svelte-4qvgim):checked ~ .checkmark:where(.svelte-4qvgim) {
    background-color: #fab45a;
    border-color: #fab45a;
  }

  .subject-label.svelte-4qvgim input:where(.svelte-4qvgim):checked ~ .checkmark:where(.svelte-4qvgim):after {
    content: "";
    position: absolute;
    display: block;
    left: 6px;
    top: 2px;
    width: 6px;
    height: 12px;
    border: solid white;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
  }

  .subject-text.svelte-4qvgim {
    font-size: 15px;
    color: #444;
    user-select: none;
  }

  .selected-subjects.svelte-4qvgim {
    margin-top: 12px;
    margin-bottom: 12px;
  }

  .selected-subjects.svelte-4qvgim > div:where(.svelte-4qvgim) {
    font-size: 14px;
    font-weight: 500;
    color: #666;
    margin-bottom: 8px;
  }

  .selected-subject-tag.svelte-4qvgim {
    display: inline-block;
    background-color: #fab45a;
    color: black;
    padding: 6px 12px;
    margin: 4px 4px 4px 0;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 400;
  }

  .remove-subject.svelte-4qvgim {
    margin-left: 8px;
    cursor: pointer;
    font-weight: bold;
    padding: 2px 4px;
    border-radius: 50%;
    transition: background-color 0.2s;
  }

  .remove-subject.svelte-4qvgim:hover {
    background-color: rgba(255, 255, 255, 0.3);
  }

  @media (max-width: 768px) {
    .teacher-info-container.svelte-4qvgim {
      padding: 15px;
    }

    .month-selection.svelte-4qvgim {
      flex-direction: column;
      align-items: stretch;
      gap: 15px;
    }

    .month-selector-container.svelte-4qvgim {
      flex-direction: column;
      align-items: stretch;
      gap: 8px;
    }

    .month-select.svelte-4qvgim,
    .year-select.svelte-4qvgim {
      width: 100%;
    }

    .selected-period.svelte-4qvgim {
      margin-left: 0;
      justify-content: center;
    }

    .combo-item.svelte-4qvgim {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }

    .combo-label.svelte-4qvgim {
      min-width: auto;
    }

    .combo-value.svelte-4qvgim {
      text-align: left;
    }

    .overview-grid.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .overview-item.svelte-4qvgim {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }

    .subjects-overview.svelte-4qvgim {
      justify-content: center;
    }

    .students-overview.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .slot-item.svelte-4qvgim {
      grid-template-columns: 1fr;
      gap: 5px;
      text-align: center;
    }

    .class-item.svelte-4qvgim {
      grid-template-columns: 1fr;
      gap: 10px;
      text-align: left;
    }

    .class-time.svelte-4qvgim {
      text-align: center;
    }

    .info-grid.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .info-item.svelte-4qvgim {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }

    .label.svelte-4qvgim {
      min-width: auto;
    }

    .value.svelte-4qvgim {
      text-align: left;
    }

    .timeslots-grid.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .month-comparison.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .metrics-grid.svelte-4qvgim {
      grid-template-columns: 1fr;
    }

    .start-date-item.svelte-4qvgim {
      flex-direction: column;
      align-items: flex-start;
      gap: 8px;
    }

    .start-date-label.svelte-4qvgim {
      font-size: 0.9em;
    }

    .start-date-value.svelte-4qvgim {
      text-align: left;
      font-size: 1em;
    }

    /* Mobile styles for subject editing */
    .subjects-container.svelte-4qvgim {
      max-height: 150px;
    }

    .subject-label.svelte-4qvgim {
      padding: 12px;
    }

    .checkmark.svelte-4qvgim {
      height: 28px;
      width: 28px;
      margin-right: 15px;
    }

    .subject-label.svelte-4qvgim input:where(.svelte-4qvgim):checked ~ .checkmark:where(.svelte-4qvgim):after {
      left: 8px;
      top: 3px;
      width: 7px;
      height: 14px;
    }

    .subject-text.svelte-4qvgim {
      font-size: 16px;
    }
  }


  .student-info-container.svelte-2bp8j5 {
    padding: 20px;
    max-width: 1200px;
    margin: 0 auto;
  }

  .student-info-container.embedded.svelte-2bp8j5 {
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .selection-section.svelte-2bp8j5 {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .selection-section.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.1em;
  }

  .month-selection.svelte-2bp8j5 {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
  }

  .month-selector-container.svelte-2bp8j5 {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .selector-label.svelte-2bp8j5 {
    font-weight: 600;
    color: #555;
    font-size: 0.95em;
  }

  .month-select.svelte-2bp8j5,
  .year-select.svelte-2bp8j5 {
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
    cursor: pointer;
    transition: border-color 0.2s;
  }

  .month-select.svelte-2bp8j5 {
    min-width: 130px;
  }

  .year-select.svelte-2bp8j5 {
    min-width: 90px;
  }

  .month-select.svelte-2bp8j5:focus,
  .year-select.svelte-2bp8j5:focus {
    outline: none;
    border-color: #28a745;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.2);
  }

  .month-select.svelte-2bp8j5:hover,
  .year-select.svelte-2bp8j5:hover {
    border-color: #28a745;
  }

  .selected-period.svelte-2bp8j5 {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background-color: #d4edda;
    border: 2px solid #28a745;
    border-radius: 6px;
    margin-left: auto;
  }

  .period-label.svelte-2bp8j5 {
    font-weight: 500;
    color: #666;
    font-size: 0.9em;
  }

  .period-value.svelte-2bp8j5 {
    font-weight: 600;
    color: #28a745;
    font-size: 1em;
  }

  .period-note.svelte-2bp8j5 {
    margin: 5px 0 0 0;
    color: #666;
    font-size: 0.85em;
    font-style: italic;
  }

  .input-container.svelte-2bp8j5 {
    position: relative;
    margin-top: 15px;
  }

  .search-input.svelte-2bp8j5 {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9em;
    background-color: white;
  }

  .search-input.svelte-2bp8j5:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 2px rgba(250, 180, 90, 0.2);
  }

  .autocomplete-list.svelte-2bp8j5 {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 6px 6px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  }

  .autocomplete-list.svelte-2bp8j5 li:where(.svelte-2bp8j5) {
    border-bottom: 1px solid #f0f0f0;
  }

  .autocomplete-list.svelte-2bp8j5 li:where(.svelte-2bp8j5):last-child {
    border-bottom: none;
  }

  .autocomplete-list.svelte-2bp8j5 button:where(.svelte-2bp8j5) {
    width: 100%;
    padding: 12px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .autocomplete-list.svelte-2bp8j5 button:where(.svelte-2bp8j5):hover {
    background-color: #f8f9fa;
  }

  .student-option.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .student-name.svelte-2bp8j5 {
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
  }

  .student-email.svelte-2bp8j5 {
    color: #666;
    font-size: 0.8em;
  }

  /* Search Type Toggle Styles */
  .search-type-toggle.svelte-2bp8j5 {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
    flex-wrap: wrap;
  }

  .toggle-btn.svelte-2bp8j5 {
    padding: 8px 16px;
    border: 2px solid #28a745;
    background: white;
    color: #28a745;
    border-radius: 20px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 5px;
  }

  .toggle-btn.svelte-2bp8j5:hover {
    background: #f8f9fa;
  }

  .toggle-btn.active.svelte-2bp8j5 {
    background: #28a745;
    color: white;
  }

  /* Phone Search Styles */
  .phone-option.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .phone-number.svelte-2bp8j5 {
    font-weight: 600;
    color: #28a745;
    font-size: 0.95em;
  }

  .phone-student-name.svelte-2bp8j5 {
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
  }

  .phone-student-email.svelte-2bp8j5 {
    color: #666;
    font-size: 0.8em;
  }

  .selected-student.svelte-2bp8j5 {
    margin-top: 20px;
    padding: 15px;
    background-color: #fff3e0;
    border: 2px solid #fab45a;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
  }

  .selected-student-info.svelte-2bp8j5 h5:where(.svelte-2bp8j5) {
    margin: 0 0 10px 0;
    color: #fab45a;
    font-size: 1em;
  }

  .selected-student-info.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 5px 0;
    font-size: 0.9em;
  }

  .selected-student-info.svelte-2bp8j5 p:where(.svelte-2bp8j5) strong:where(.svelte-2bp8j5) {
    color: #333;
  }

  .btn-clear-small.svelte-2bp8j5 {
    padding: 8px 16px;
    background-color: #6c757d;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.85em;
    white-space: nowrap;
  }

  .btn-clear-small.svelte-2bp8j5:hover {
    background-color: #545b62;
  }

  .student-info-container.svelte-2bp8j5 h3:where(.svelte-2bp8j5) {
    margin: 0 0 20px 0;
    color: #333;
    border-bottom: 2px solid #fab45a;
    padding-bottom: 10px;
  }

  .error-message.svelte-2bp8j5 {
    background-color: #f8d7da;
    color: #721c24;
    padding: 10px;
    border: 1px solid #f5c6cb;
    border-radius: 5px;
    margin-bottom: 20px;
  }

  .loading.svelte-2bp8j5 {
    text-align: center;
    padding: 20px;
    color: #666;
    font-style: italic;
  }

  .student-overview.svelte-2bp8j5 {
    background: #fff;
    border: 2px solid #28a745;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .student-overview.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
    margin: 0 0 20px 0;
    color: #28a745;
    font-size: 1.2em;
    border-bottom: 2px solid #28a745;
    padding-bottom: 10px;
  }

  .overview-section.svelte-2bp8j5 {
    margin-bottom: 20px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 6px;
  }

  .overview-section.svelte-2bp8j5 h5:where(.svelte-2bp8j5) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.1em;
  }

  .overview-grid.svelte-2bp8j5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
  }

  .overview-item.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: white;
    border-radius: 4px;
    border-left: 4px solid #28a745;
  }

  .overview-label.svelte-2bp8j5 {
    font-weight: 600;
    color: #555;
  }

  .overview-value.svelte-2bp8j5 {
    font-weight: bold;
    color: #28a745;
  }

  .transactions-list.svelte-2bp8j5 {
    margin-top: 15px;
  }

  .transactions-list.svelte-2bp8j5 h6:where(.svelte-2bp8j5) {
    margin: 0 0 10px 0;
    color: #666;
    font-size: 0.9em;
  }

  .transaction-item.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px;
    background: white;
    border-radius: 4px;
    margin-bottom: 5px;
    border-left: 3px solid #28a745;
  }

  .transaction-amount.svelte-2bp8j5 {
    font-weight: bold;
    color: #28a745;
  }

  .transaction-type.svelte-2bp8j5 {
    color: #666;
    font-size: 0.9em;
  }

  .transaction-date.svelte-2bp8j5 {
    color: #999;
    font-size: 0.8em;
  }

  .teachers-overview.svelte-2bp8j5 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 10px;
  }

  .teacher-item.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: white;
    border-radius: 4px;
    border: 1px solid #ddd;
  }

  .teacher-name.svelte-2bp8j5 {
    font-weight: 500;
    color: #333;
  }

  .teacher-details.svelte-2bp8j5 {
    color: #666;
    font-size: 0.8em;
  }

  .subjects-overview.svelte-2bp8j5 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .subject-tag.svelte-2bp8j5 {
    padding: 6px 12px;
    background: linear-gradient(135deg, #28a745, #20c997);
    color: white;
    border-radius: 15px;
    font-size: 0.85em;
    font-weight: 500;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

  .no-data.svelte-2bp8j5 {
    color: #666;
    font-style: italic;
    margin: 0;
  }

  /* Attendance Details Styles */
  .attendance-details-toggle.svelte-2bp8j5 {
    margin-top: 15px;
    text-align: center;
  }

  .btn-toggle-details.svelte-2bp8j5 {
    padding: 8px 16px;
    background: #28a745;
    color: white;
    border: none;
    border-radius: 20px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
  }

  .btn-toggle-details.svelte-2bp8j5:hover {
    background: #218838;
    transform: translateY(-1px);
  }

  .attendance-details.svelte-2bp8j5 {
    margin-top: 15px;
    padding: 15px;
    background: white;
    border-radius: 8px;
    border: 1px solid #ddd;
  }

  .attendance-category.svelte-2bp8j5 {
    margin-bottom: 20px;
  }

  .attendance-category.svelte-2bp8j5:last-child {
    margin-bottom: 0;
  }

  .attendance-category.svelte-2bp8j5 h6:where(.svelte-2bp8j5) {
    margin: 0 0 12px 0;
    color: #333;
    font-size: 1em;
    font-weight: 600;
    padding-bottom: 8px;
    border-bottom: 2px solid #28a745;
  }

  .attendance-list.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .attendance-item.svelte-2bp8j5 {
    padding: 12px;
    border-radius: 6px;
    border-left: 4px solid;
  }

  .late-item.svelte-2bp8j5 {
    background: #fff3cd;
    border-left-color: #ffc107;
  }

  .no-show-item.svelte-2bp8j5 {
    background: #f8d7da;
    border-left-color: #dc3545;
  }

  .on-time-item.svelte-2bp8j5 {
    background: #d4edda;
    border-left-color: #28a745;
  }

  .attendance-header.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    flex-wrap: wrap;
    gap: 8px;
  }

  .class-name.svelte-2bp8j5 {
    font-weight: 600;
    color: #333;
    flex: 1;
    min-width: 150px;
  }

  .class-teacher.svelte-2bp8j5 {
    color: #666;
    font-size: 0.9em;
    background: #f8f9fa;
    padding: 2px 8px;
    border-radius: 12px;
  }

  .late-badge.svelte-2bp8j5 {
    background: #ffc107;
    color: #000;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 600;
  }

  .no-show-badge.svelte-2bp8j5 {
    background: #dc3545;
    color: white;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 600;
  }

  .on-time-badge.svelte-2bp8j5 {
    background: #28a745;
    color: white;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 600;
  }

  .attendance-times.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .time-info.svelte-2bp8j5 {
    font-size: 0.85em;
    color: #666;
  }

  .time-info.svelte-2bp8j5 strong:where(.svelte-2bp8j5) {
    color: #333;
  }

  .student-comments.svelte-2bp8j5 {
    background: #f8f9fa;
    border: 2px solid #28a745;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .student-comments.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
    margin: 0 0 15px 0;
    color: #28a745;
    font-size: 1.2em;
    border-bottom: 2px solid #28a745;
    padding-bottom: 10px;
  }

  .comments-summary.svelte-2bp8j5 {
    margin-bottom: 15px;
    padding: 10px;
    background: white;
    border-radius: 6px;
  }

  .comments-summary.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 0;
    color: #666;
  }

  .comments-list.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .comment-item.svelte-2bp8j5 {
    background: white;
    border-radius: 8px;
    border: 1px solid #ddd;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  }

  .comment-header.svelte-2bp8j5 {
    padding: 15px;
    cursor: pointer;
    transition: background-color 0.2s;
    user-select: none;
  }

  .comment-header.svelte-2bp8j5:hover {
    background-color: #f8f9fa;
  }

  .comment-basic-info.svelte-2bp8j5 {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 8px;
  }

  .comment-class.svelte-2bp8j5 {
    background: #007bff;
    color: white;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .comment-subject.svelte-2bp8j5 {
    background: #28a745;
    color: white;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .comment-teacher.svelte-2bp8j5 {
    background: #6c757d;
    color: white;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .comment-date.svelte-2bp8j5 {
    background: #ffc107;
    color: #000;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .comment-summary.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }

  .comment-note-preview.svelte-2bp8j5 {
    flex: 1;
    color: #666;
    font-style: italic;
    font-size: 0.9em;
  }

  .expand-indicator.svelte-2bp8j5 {
    color: #28a745;
    font-weight: bold;
    font-size: 1.1em;
  }

  .comment-details.svelte-2bp8j5 {
    padding: 15px;
    background: #f8f9fa;
    border-top: 1px solid #ddd;
  }

  .comment-ratings.svelte-2bp8j5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin-bottom: 15px;
  }

  .rating-item.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: white;
    border-radius: 6px;
    border-left: 3px solid #28a745;
  }

  .rating-label.svelte-2bp8j5 {
    font-weight: 500;
    color: #555;
    font-size: 0.85em;
  }

  .rating-value.svelte-2bp8j5 {
    font-weight: bold;
    color: #28a745;
    font-size: 0.9em;
  }

  .comment-full-note.svelte-2bp8j5 {
    background: white;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #28a745;
  }

  .comment-full-note.svelte-2bp8j5 h6:where(.svelte-2bp8j5) {
    margin: 0 0 10px 0;
    color: #28a745;
    font-size: 0.9em;
  }

  .comment-full-note.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 0;
    color: #333;
    line-height: 1.5;
  }

  .no-comments.svelte-2bp8j5 {
    text-align: center;
    padding: 40px 20px;
    color: #666;
  }

  .no-comments.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 0;
    font-style: italic;
  }

  .student-details.svelte-2bp8j5 {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 20px;
    margin-top: 20px;
  }

  .student-details-header.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 10px;
  }

  .student-details.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
    margin: 0;
    color: #333;
    font-size: 1.2em;
  }

  .edit-controls.svelte-2bp8j5 {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .btn.svelte-2bp8j5 {
    padding: 8px 16px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
    text-decoration: none;
    display: inline-block;
  }

  .btn.svelte-2bp8j5:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .btn-primary.svelte-2bp8j5 {
    background-color: #fab45a;
    color: black;
  }

  .btn-primary.svelte-2bp8j5:hover:not(:disabled) {
    background-color: #e09a43;
  }

  .btn-secondary.svelte-2bp8j5 {
    background-color: #6c757d;
    color: white;
  }

  .btn-secondary.svelte-2bp8j5:hover:not(:disabled) {
    background-color: #545b62;
  }

  .info-section.svelte-2bp8j5 {
    margin-bottom: 25px;
    background: white;
    padding: 15px;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  }

  .info-section.svelte-2bp8j5 h5:where(.svelte-2bp8j5) {
    margin: 0 0 15px 0;
    color: #28a745;
    font-size: 1.1em;
    border-bottom: 1px solid #eee;
    padding-bottom: 5px;
  }

  .info-grid.svelte-2bp8j5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
  }

  .info-item.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .info-item.svelte-2bp8j5:last-child {
    border-bottom: none;
  }

  .label.svelte-2bp8j5 {
    font-weight: 600;
    color: #555;
    min-width: 140px;
  }

  .value.svelte-2bp8j5 {
    color: #333;
    text-align: right;
    flex: 1;
    word-break: break-word;
  }

  .edit-input.svelte-2bp8j5 {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 0.9em;
  }

  .edit-input.svelte-2bp8j5:focus {
    outline: none;
    border-color: #28a745;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.2);
  }

  .edit-textarea.svelte-2bp8j5 {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 0.9em;
    resize: vertical;
  }

  .edit-textarea.svelte-2bp8j5:focus {
    outline: none;
    border-color: #28a745;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.2);
  }

  /* View All Transactions Button Styles */
  .view-all-transactions-btn-container.svelte-2bp8j5 {
    margin-top: 15px;
    text-align: center;
    padding-top: 10px;
    border-top: 1px solid #eee;
  }

  .btn-view-all-transactions.svelte-2bp8j5 {
    padding: 10px 20px;
    background: linear-gradient(135deg, #28a745, #20c997);
    color: white;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 600;
    transition: all 0.3s;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .btn-view-all-transactions.svelte-2bp8j5:hover:not(:disabled) {
    background: linear-gradient(135deg, #218838, #1e8e7a);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  }

  .btn-view-all-transactions.svelte-2bp8j5:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
  }

  /* Modal Styles */
  .modal-overlay.svelte-2bp8j5 {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    padding: 20px;
  }

  .modal-content.svelte-2bp8j5 {
    background: white;
    border-radius: 12px;
    max-width: 800px;
    width: 100%;
    max-height: 90vh;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    display: flex;
    flex-direction: column;
  }

  .modal-header.svelte-2bp8j5 {
    padding: 20px;
    border-bottom: 1px solid #ddd;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f8f9fa;
  }

  .modal-header.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
    margin: 0;
    color: #28a745;
    font-size: 1.3em;
  }

  .modal-close-btn.svelte-2bp8j5 {
    background: none;
    border: none;
    font-size: 2em;
    color: #666;
    cursor: pointer;
    padding: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.2s;
  }

  .modal-close-btn.svelte-2bp8j5:hover {
    background: #f0f0f0;
    color: #333;
  }

  .modal-body.svelte-2bp8j5 {
    padding: 20px;
    overflow-y: auto;
    flex: 1;
  }

  .modal-footer.svelte-2bp8j5 {
    padding: 15px 20px;
    border-top: 1px solid #ddd;
    display: flex;
    justify-content: flex-end;
    background: #f8f9fa;
  }

  .transactions-summary.svelte-2bp8j5 {
    margin-bottom: 20px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #28a745;
  }

  .transactions-summary.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 0;
    color: #666;
    font-size: 1em;
  }

  .all-transactions-list.svelte-2bp8j5 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 400px;
    overflow-y: auto;
  }

  .transaction-item-detailed.svelte-2bp8j5 {
    background: white;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    transition: all 0.2s;
  }

  .transaction-item-detailed.svelte-2bp8j5:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transform: translateY(-1px);
  }

  .transaction-main-info.svelte-2bp8j5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 8px;
  }

  .transaction-amount-detailed.svelte-2bp8j5 {
    font-weight: bold;
    font-size: 1.1em;
    padding: 4px 12px;
    border-radius: 15px;
  }

  .transaction-amount-detailed.payment.svelte-2bp8j5 {
    background: #d4edda;
    color: #155724;
  }

  .transaction-amount-detailed.charge.svelte-2bp8j5 {
    background: #f8d7da;
    color: #721c24;
  }

  .transaction-type-detailed.svelte-2bp8j5 {
    background: #007bff;
    color: white;
    padding: 3px 12px;
    border-radius: 12px;
    font-size: 0.85em;
    font-weight: 500;
    text-transform: capitalize;
  }

  .transaction-date-detailed.svelte-2bp8j5 {
    background: #6c757d;
    color: white;
    padding: 3px 12px;
    border-radius: 12px;
    font-size: 0.85em;
    font-weight: 500;
  }

  .transaction-description.svelte-2bp8j5 {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #eee;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .description-label.svelte-2bp8j5 {
    font-weight: 600;
    color: #555;
    font-size: 0.85em;
  }

  .description-text.svelte-2bp8j5 {
    color: #333;
    font-size: 0.9em;
    line-height: 1.4;
  }

  .no-transactions.svelte-2bp8j5 {
    text-align: center;
    padding: 40px 20px;
    color: #666;
  }

  .no-transactions.svelte-2bp8j5 p:where(.svelte-2bp8j5) {
    margin: 0;
    font-style: italic;
  }

  @media (max-width: 768px) {
    .student-info-container.svelte-2bp8j5 {
      padding: 15px;
    }

    .month-selection.svelte-2bp8j5 {
      flex-direction: column;
      align-items: stretch;
      gap: 15px;
    }

    .month-selector-container.svelte-2bp8j5 {
      flex-direction: column;
      align-items: stretch;
      gap: 8px;
    }

    .month-select.svelte-2bp8j5,
    .year-select.svelte-2bp8j5 {
      width: 100%;
    }

    .selected-period.svelte-2bp8j5 {
      margin-left: 0;
      justify-content: center;
    }

    .overview-grid.svelte-2bp8j5 {
      grid-template-columns: 1fr;
    }

    .overview-item.svelte-2bp8j5 {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }

    .teachers-overview.svelte-2bp8j5 {
      grid-template-columns: 1fr;
    }

    .info-grid.svelte-2bp8j5 {
      grid-template-columns: 1fr;
    }

    .info-item.svelte-2bp8j5 {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }

    .label.svelte-2bp8j5 {
      min-width: auto;
    }

    .value.svelte-2bp8j5 {
      text-align: left;
    }

    .subjects-overview.svelte-2bp8j5 {
      justify-content: center;
    }

    .comment-basic-info.svelte-2bp8j5 {
      justify-content: center;
    }

    .comment-ratings.svelte-2bp8j5 {
      grid-template-columns: 1fr;
    }

    .comment-summary.svelte-2bp8j5 {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }

    .search-type-toggle.svelte-2bp8j5 {
      justify-content: center;
    }

    .toggle-btn.svelte-2bp8j5 {
      flex: 1;
      min-width: 120px;
      justify-content: center;
    }

    .attendance-header.svelte-2bp8j5 {
      flex-direction: column;
      align-items: flex-start;
      gap: 8px;
    }

    .class-name.svelte-2bp8j5 {
      min-width: auto;
    }

    .attendance-times.svelte-2bp8j5 {
      width: 100%;
    }

    .modal-content.svelte-2bp8j5 {
      margin: 10px;
      max-height: 95vh;
    }

    .modal-header.svelte-2bp8j5 h4:where(.svelte-2bp8j5) {
      font-size: 1.1em;
    }

    .transaction-main-info.svelte-2bp8j5 {
      flex-direction: column;
      align-items: flex-start;
      gap: 8px;
    }

    .btn-view-all-transactions.svelte-2bp8j5 {
      font-size: 0.8em;
      padding: 8px 16px;
    }

    .view-all-transactions-btn-container.svelte-2bp8j5 {
      margin-top: 10px;
    }

    .all-transactions-list.svelte-2bp8j5 {
      max-height: 300px;
    }

    .transaction-item-detailed.svelte-2bp8j5 {
      padding: 12px;
    }
  }


    .teachers-list-container.svelte-1ezenbx {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .search-section.svelte-1ezenbx {
        background: #f8f9fa;
        padding: 15px;
        border-radius: 8px;
        margin-bottom: 20px;
        border: 1px solid #e1e5e9;
    }

    .search-controls.svelte-1ezenbx {
        display: flex;
        gap: 20px;
        align-items: flex-end;
    }

    .search-field.svelte-1ezenbx {
        flex: 1;
    }

    .search-field.svelte-1ezenbx label:where(.svelte-1ezenbx) {
        display: block;
        margin-bottom: 8px;
        font-weight: 500;
        color: #333;
    }

    .search-field.svelte-1ezenbx input:where(.svelte-1ezenbx) {
        width: 100%;
        padding: 12px 16px;
        border: 2px solid #e1e5e9;
        border-radius: 8px;
        font-size: 16px;
        transition: border-color 0.3s ease;
    }

    .search-field.svelte-1ezenbx input:where(.svelte-1ezenbx):focus {
        outline: none;
        border-color: #667eea;
        box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
    }

    .export-section.svelte-1ezenbx {
        display: flex;
        align-items: center;
    }

    .export-button.svelte-1ezenbx {
        display: flex;
        align-items: center;
        gap: 8px;
        background: #28a745;
        color: white;
        border: none;
        padding: 12px 20px;
        border-radius: 8px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.3s ease;
        white-space: nowrap;
    }

    .export-button.svelte-1ezenbx:hover:not(:disabled) {
        background: #218838;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(40, 167, 69, 0.3);
    }

    .export-button.svelte-1ezenbx:disabled {
        background: #6c757d;
        cursor: not-allowed;
        transform: none;
        box-shadow: none;
    }

    .export-icon.svelte-1ezenbx {
        font-size: 16px;
    }

    .loading-spinner.svelte-1ezenbx {
        width: 16px;
        height: 16px;
        border: 2px solid transparent;
        border-top: 2px solid white;
        border-radius: 50%;
        animation: svelte-1ezenbx-spin 1s linear infinite;
    }

    @keyframes svelte-1ezenbx-spin {
        from { transform: rotate(0deg); }
        to { transform: rotate(360deg); }
    }

    .loading-message.svelte-1ezenbx, .error-message.svelte-1ezenbx, .no-results.svelte-1ezenbx, .no-teachers.svelte-1ezenbx {
        text-align: center;
        padding: 40px 20px;
        background: white;
        border-radius: 12px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    }

    .error-message.svelte-1ezenbx {
        color: #dc3545;
    }

    .retry-button.svelte-1ezenbx {
        background: #667eea;
        color: white;
        border: none;
        padding: 10px 20px;
        border-radius: 6px;
        cursor: pointer;
        margin-top: 15px;
        transition: background-color 0.3s ease;
    }

    .retry-button.svelte-1ezenbx:hover {
        background: #5a67d8;
    }

    .teachers-summary.svelte-1ezenbx {
        margin-bottom: 20px;
        padding: 15px;
        background: #f8f9fa;
        border-radius: 8px;
        text-align: center;
    }

    .teachers-list.svelte-1ezenbx {
        display: grid;
        gap: 20px;
    }

    .teacher-card.svelte-1ezenbx {
        background: white;
        border-radius: 12px;
        padding: 25px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        border: 1px solid #e1e5e9;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .teacher-card.svelte-1ezenbx:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    }

    .teacher-header.svelte-1ezenbx {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 1px solid #e1e5e9;
    }

    .teacher-name.svelte-1ezenbx h3:where(.svelte-1ezenbx) {
        margin: 0 0 5px 0;
        color: #2d3748;
        font-size: 1.3em;
        font-weight: 600;
    }

    .teacher-email.svelte-1ezenbx {
        margin: 0;
        color: #667eea;
        font-size: 0.95em;
    }

    .login-status.svelte-1ezenbx {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 20px;
        font-size: 0.85em;
        font-weight: 500;
    }

    .status-indicator.svelte-1ezenbx {
        width: 8px;
        height: 8px;
        border-radius: 50%;
    }

    .login-status.recent.svelte-1ezenbx {
        background: #d4edda;
        color: #155724;
    }

    .login-status.recent.svelte-1ezenbx .status-indicator:where(.svelte-1ezenbx) {
        background: #28a745;
    }

    .login-status.moderate.svelte-1ezenbx {
        background: #fff3cd;
        color: #856404;
    }

    .login-status.moderate.svelte-1ezenbx .status-indicator:where(.svelte-1ezenbx) {
        background: #ffc107;
    }

    .login-status.old.svelte-1ezenbx {
        background: #f8d7da;
        color: #721c24;
    }

    .login-status.old.svelte-1ezenbx .status-indicator:where(.svelte-1ezenbx) {
        background: #dc3545;
    }

    .login-status.never-logged.svelte-1ezenbx {
        background: #e2e3e5;
        color: #383d41;
    }

    .login-status.never-logged.svelte-1ezenbx .status-indicator:where(.svelte-1ezenbx) {
        background: #6c757d;
    }

    .teacher-details.svelte-1ezenbx {
        display: grid;
        gap: 12px;
    }

    .detail-row.svelte-1ezenbx {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
        align-items: center;
    }

    .detail-label.svelte-1ezenbx {
        font-weight: 500;
        color: #4a5568;
    }

    .detail-value.svelte-1ezenbx {
        color: #2d3748;
        word-break: break-word;
    }

    .detail-value.active.svelte-1ezenbx {
        color: #28a745;
        font-weight: 500;
    }

    .detail-value.inactive.svelte-1ezenbx {
        color: #dc3545;
        font-weight: 500;
    }

    .detail-value.calendar-id.svelte-1ezenbx {
        font-family: 'Courier New', monospace;
        font-size: 0.9em;
        background: #f8f9fa;
        padding: 4px 8px;
        border-radius: 4px;
    }

    @media (max-width: 768px) {
        .search-controls.svelte-1ezenbx {
            flex-direction: column;
            gap: 15px;
            align-items: stretch;
        }

        .export-button.svelte-1ezenbx {
            justify-content: center;
            width: 100%;
        }

        .teacher-header.svelte-1ezenbx {
            flex-direction: column;
            gap: 15px;
        }

        .detail-row.svelte-1ezenbx {
            grid-template-columns: 1fr;
            gap: 5px;
        }

        .detail-label.svelte-1ezenbx {
            font-size: 0.9em;
        }
    }


    .students-list-container.svelte-qteule {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .search-section.svelte-qteule {
        background: #f8f9fa;
        padding: 15px;
        border-radius: 8px;
        margin-bottom: 20px;
        border: 1px solid #e1e5e9;
        display: flex;
        gap: 20px;
        align-items: flex-end;
    }

    .search-field.svelte-qteule {
        flex: 1;
    }

    .search-field.svelte-qteule label:where(.svelte-qteule) {
        display: block;
        margin-bottom: 8px;
        font-weight: 500;
        color: #333;
    }

    .search-field.svelte-qteule input:where(.svelte-qteule) {
        width: 100%;
        padding: 12px 16px;
        border: 2px solid #e1e5e9;
        border-radius: 8px;
        font-size: 16px;
        transition: border-color 0.3s ease;
    }

    .search-field.svelte-qteule input:where(.svelte-qteule):focus {
        outline: none;
        border-color: #667eea;
        box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
    }

    .view-toggle.svelte-qteule {
        display: flex;
        align-items: center;
        gap: 8px;
        font-weight: 500;
        color: #333;
    }

    .view-toggle.svelte-qteule input[type="checkbox"]:where(.svelte-qteule) {
        transform: scale(1.2);
    }

    .loading-message.svelte-qteule, .error-message.svelte-qteule, .no-results.svelte-qteule, .no-students.svelte-qteule {
        text-align: center;
        padding: 40px 20px;
        background: white;
        border-radius: 12px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    }

    .error-message.svelte-qteule {
        color: #dc3545;
    }

    .retry-button.svelte-qteule {
        background: #667eea;
        color: white;
        border: none;
        padding: 10px 20px;
        border-radius: 6px;
        cursor: pointer;
        margin-top: 15px;
        transition: background-color 0.3s ease;
    }

    .retry-button.svelte-qteule:hover {
        background: #5a67d8;
    }

    .students-summary.svelte-qteule {
        margin-bottom: 20px;
        padding: 15px;
        background: #f8f9fa;
        border-radius: 8px;
        text-align: center;
    }

    /* Family Groups Styles */
    .family-groups.svelte-qteule {
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .family-group.svelte-qteule {
        background: white;
        border-radius: 12px;
        padding: 20px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        border: 2px solid #e1e5e9;
    }

    .family-header.svelte-qteule {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 2px solid #f0f4f8;
    }

    .family-header.svelte-qteule h3:where(.svelte-qteule) {
        margin: 0;
        color: #2d3748;
        font-size: 1.4em;
        font-weight: 600;
    }

    .family-count.svelte-qteule, .section-count.svelte-qteule {
        background: #fab45a;
        color: white;
        padding: 6px 12px;
        border-radius: 15px;
        font-size: 0.85em;
        font-weight: 500;
    }

    .students-without-family.svelte-qteule {
        background: white;
        border-radius: 12px;
        padding: 20px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        border: 2px solid #e1e5e9;
        margin-top: 30px;
    }

    .section-header.svelte-qteule {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 2px solid #f0f4f8;
    }

    .section-header.svelte-qteule h3:where(.svelte-qteule) {
        margin: 0;
        color: #2d3748;
        font-size: 1.4em;
        font-weight: 600;
    }

    /* Students Grid */
    .students-grid.svelte-qteule {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
        gap: 20px;
    }

    .students-list.svelte-qteule {
        display: grid;
        gap: 20px;
    }

    .student-card.svelte-qteule {
        background: #fafbfc;
        border-radius: 10px;
        padding: 20px;
        box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05);
        border: 1px solid #e8ecf0;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .student-card.svelte-qteule:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    }

    .student-header.svelte-qteule {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 15px;
        padding-bottom: 12px;
        border-bottom: 1px solid #e1e5e9;
    }

    .student-name.svelte-qteule h4:where(.svelte-qteule) {
        margin: 0 0 5px 0;
        color: #2d3748;
        font-size: 1.1em;
        font-weight: 600;
    }

    .student-email.svelte-qteule {
        margin: 0;
        color: #667eea;
        font-size: 0.9em;
    }

    .student-families.svelte-qteule {
        margin: 5px 0 0 0;
        color: #fab45a;
        font-size: 0.85em;
        font-weight: 500;
    }

    .login-status.svelte-qteule {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 6px 10px;
        border-radius: 15px;
        font-size: 0.8em;
        font-weight: 500;
    }

    .status-indicator.svelte-qteule {
        width: 6px;
        height: 6px;
        border-radius: 50%;
    }

    .login-status.recent.svelte-qteule {
        background: #d4edda;
        color: #155724;
    }

    .login-status.recent.svelte-qteule .status-indicator:where(.svelte-qteule) {
        background: #28a745;
    }

    .login-status.moderate.svelte-qteule {
        background: #fff3cd;
        color: #856404;
    }

    .login-status.moderate.svelte-qteule .status-indicator:where(.svelte-qteule) {
        background: #ffc107;
    }

    .login-status.old.svelte-qteule {
        background: #f8d7da;
        color: #721c24;
    }

    .login-status.old.svelte-qteule .status-indicator:where(.svelte-qteule) {
        background: #dc3545;
    }

    .login-status.never-logged.svelte-qteule {
        background: #e2e3e5;
        color: #383d41;
    }

    .login-status.never-logged.svelte-qteule .status-indicator:where(.svelte-qteule) {
        background: #6c757d;
    }

    .student-details.svelte-qteule {
        display: grid;
        gap: 10px;
    }

    .detail-row.svelte-qteule {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        align-items: center;
    }

    .detail-label.svelte-qteule {
        font-weight: 500;
        color: #4a5568;
        font-size: 0.9em;
    }

    .detail-value.svelte-qteule {
        color: #2d3748;
        word-break: break-word;
        font-size: 0.9em;
    }

    .detail-value.active.svelte-qteule {
        color: #28a745;
        font-weight: 500;
    }

    .detail-value.inactive.svelte-qteule {
        color: #dc3545;
        font-weight: 500;
    }

    .parent-section.svelte-qteule {
        background: #f0f4f8;
        padding: 12px;
        border-radius: 8px;
        margin-top: 8px;
        grid-column: 1 / -1;
    }

    .parent-section.svelte-qteule h5:where(.svelte-qteule) {
        margin: 0 0 10px 0;
        color: #2d3748;
        font-size: 0.95em;
        font-weight: 600;
    }

    .parent-section.svelte-qteule .detail-row:where(.svelte-qteule) {
        margin-bottom: 5px;
    }

    .parent-section.svelte-qteule .detail-row:where(.svelte-qteule):last-child {
        margin-bottom: 0;
    }

    @media (max-width: 768px) {
        .search-section.svelte-qteule {
            flex-direction: column;
            align-items: stretch;
        }

        .students-grid.svelte-qteule {
            grid-template-columns: 1fr;
        }

        .student-header.svelte-qteule {
            flex-direction: column;
            gap: 15px;
        }

        .detail-row.svelte-qteule {
            grid-template-columns: 1fr;
            gap: 5px;
        }

        .detail-label.svelte-qteule {
            font-size: 0.8em;
        }

        .family-header.svelte-qteule, .section-header.svelte-qteule {
            flex-direction: column;
            gap: 10px;
            align-items: flex-start;
        }
    }


  /* Header styling matching AdminClassRegistrationRequestsComponent */
  .labelDiv.svelte-1g2q8yo {
    display: flex;
    justify-content: space-around;
    margin-bottom: 2rem;
  }
  .labelDiv.svelte-1g2q8yo span:where(.svelte-1g2q8yo) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #333;
  }

  /* Loading and empty states */
  .loading-message.svelte-1g2q8yo, .empty-message.svelte-1g2q8yo {
    text-align: center;
    padding: 2rem;
    color: #666;
    font-style: italic;
  }

  /* Date group styling */
  .date-group.svelte-1g2q8yo {
    margin-bottom: 2rem;
  }
  .date-header.svelte-1g2q8yo {
    font-size: 1.1rem;
    font-weight: bold;
    color: #0055aa;
    border-bottom: 2px solid #0055aa;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
  }

  /* Filter navigation */
  .filter-navigation.svelte-1g2q8yo {
    display: flex;
    gap: 10px;
    margin-bottom: 2rem;
    justify-content: center;
    flex-wrap: wrap;
  }

  .filter-button.svelte-1g2q8yo {
    padding: 10px 20px;
    border: 1px solid #ccc;
    background: white;
    cursor: pointer;
    border-radius: 8px;
    font-size: 14px;
    transition: all 0.2s ease;
    font-weight: 500;
  }

  .filter-button.svelte-1g2q8yo:hover {
    background-color: #f8f9fa;
    border-color: #0055aa;
    transform: translateY(-1px);
  }

  .filter-button.active.svelte-1g2q8yo {
    background: #0055aa;
    color: white;
    border-color: #0055aa;
    box-shadow: 0 2px 4px rgba(0, 85, 170, 0.3);
  }

  .filter-button.active.svelte-1g2q8yo:hover {
    background: #004488;
  }

  /* Section header */
  .section-header.svelte-1g2q8yo {
    margin: 2rem 0 1rem 0;
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
    background: linear-gradient(135deg, #e8f5e8 0%, #d4edda 100%);
    border: 1px solid #c3e6cb;
    color: #155724;
  }
  .section-header.svelte-1g2q8yo h2:where(.svelte-1g2q8yo) {
    margin: 0 0 0.5rem 0;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .section-header.svelte-1g2q8yo p:where(.svelte-1g2q8yo) {
    margin: 0;
    font-size: 0.95rem;
    opacity: 0.8;
  }
  .results-count.svelte-1g2q8yo {
    margin-top: 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    opacity: 0.9;
  }

  /* Class card styling */
  .class-card.svelte-1g2q8yo {
    border: 1px solid #ccc;
    border-radius: 8px;
    margin-bottom: 1rem;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s ease;
  }
  .class-card.svelte-1g2q8yo:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  }

  /* Summary button styling */
  .class-summary.svelte-1g2q8yo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    border: none;
    background: #fff;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.2s ease;
    font-size: 1rem;
    border-left: 4px solid #28a745;
  }
  .class-summary.svelte-1g2q8yo:hover {
    background-color: #f8f9fa;
  }

  /* Summary content layout */
  .summary-content.svelte-1g2q8yo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    margin-right: 1rem;
  }
  .summary-main.svelte-1g2q8yo {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .student-name.svelte-1g2q8yo {
    font-weight: bold;
    color: #333;
    font-size: 1rem;
  }
  .teacher-info.svelte-1g2q8yo {
    color: #666;
    font-size: 0.9rem;
  }
  .first-class-badge.svelte-1g2q8yo {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
    color: #856404;
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
    border: 1px solid #ffeaa7;
  }

  /* Handled status badge */
  .handled-badge.svelte-1g2q8yo {
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  .handled-badge.handled.svelte-1g2q8yo {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
  }
  .handled-badge.unhandled.svelte-1g2q8yo {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
  }

  /* Time badge */
  .time-badge.svelte-1g2q8yo {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    align-items: flex-end;
  }
  .class-time.svelte-1g2q8yo {
    background-color: #e1f5fe;
    color: #01579b;
    padding: 0.3rem 0.8rem;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: bold;
    border: 1px solid #b3e5fc;
  }

  /* Expand icon */
  .expand-icon.svelte-1g2q8yo {
    color: #0055aa;
    font-size: 0.8rem;
    transition: transform 0.2s ease;
  }

  /* Details section */
  .class-details.svelte-1g2q8yo {
    padding: 1.5rem;
    background-color: #f8f9fa;
    border-top: 1px solid #e9ecef;
  }
  .details-grid.svelte-1g2q8yo {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }
  .detail-item.svelte-1g2q8yo {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }
  .detail-item.full-width.svelte-1g2q8yo {
    grid-column: 1 / -1;
  }
  .detail-label.svelte-1g2q8yo {
    font-weight: bold;
    color: #0055aa;
    font-size: 0.9rem;
  }
  .detail-value.svelte-1g2q8yo {
    color: #333;
    font-size: 1rem;
    padding: 0.4rem;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
  }

  /* Special highlight for first class */
  .first-class-highlight.svelte-1g2q8yo {
    background: linear-gradient(135deg, #fff3cd 0%, #fff8dc 100%);
    border: 1px solid #ffeaa7;
    color: #856404;
    padding: 0.8rem;
    border-radius: 6px;
    font-size: 0.9rem;
    line-height: 1.4;
    font-weight: 600;
  }

  /* Handled info styling */
  .handled-info.svelte-1g2q8yo {
    background: #d4edda;
    color: #155724;
    padding: 0.8rem;
    border-radius: 6px;
    border: 1px solid #c3e6cb;
    font-size: 0.9rem;
    line-height: 1.4;
  }

  .handled-info.svelte-1g2q8yo strong:where(.svelte-1g2q8yo) {
    font-weight: 600;
  }

  /* Parent information styling */
  .parent-info.svelte-1g2q8yo {
    background: #e8f4fd;
    color: #0c5460;
    padding: 0.8rem;
    border-radius: 6px;
    border: 1px solid #bee5eb;
    font-size: 0.9rem;
    line-height: 1.6;
  }

  .parent-info.svelte-1g2q8yo div:where(.svelte-1g2q8yo) {
    margin-bottom: 0.3rem;
  }

  .parent-info.svelte-1g2q8yo div:where(.svelte-1g2q8yo):last-child {
    margin-bottom: 0;
  }

  .parent-info.svelte-1g2q8yo strong:where(.svelte-1g2q8yo) {
    font-weight: 600;
  }

  .parent-info-none.svelte-1g2q8yo {
    background: #f8f9fa;
    color: #6c757d;
    padding: 0.8rem;
    border-radius: 6px;
    border: 1px solid #dee2e6;
    font-size: 0.9rem;
    font-style: italic;
  }

  /* Action buttons */
  .action-buttons.svelte-1g2q8yo {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
    flex-wrap: wrap;
  }

  .action-button.svelte-1g2q8yo {
    padding: 0.8rem 1.5rem;
    border: none;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .handled-button.svelte-1g2q8yo {
    background-color: #28a745;
    color: white;
  }

  .handled-button.svelte-1g2q8yo:hover {
    background-color: #218838;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(40, 167, 69, 0.3);
  }

  .unhandled-button.svelte-1g2q8yo {
    background-color: #dc3545;
    color: white;
  }

  .unhandled-button.svelte-1g2q8yo:hover {
    background-color: #c82333;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
  }

  .join-button.svelte-1g2q8yo {
    background-color: #17a2b8;
    color: white;
  }

  .join-button.svelte-1g2q8yo:hover {
    background-color: #138496;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(23, 162, 184, 0.3);
  }

  .action-button.svelte-1g2q8yo:active {
    transform: translateY(0);
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {
    .details-grid.svelte-1g2q8yo {
      grid-template-columns: 1fr;
    }
    .summary-content.svelte-1g2q8yo {
      flex-direction: column;
      align-items: flex-start;
      gap: 0.5rem;
    }
    .time-badge.svelte-1g2q8yo {
      align-self: flex-end;
    }
    .action-buttons.svelte-1g2q8yo {
      flex-direction: column;
      gap: 0.5rem;
    }
    .action-button.svelte-1g2q8yo {
      justify-content: center;
    }
  }


  .calendar-launch.svelte-o9fzdu { margin: 18px 0; }
  .calendar-launch.svelte-o9fzdu a:where(.svelte-o9fzdu) { display: inline-block; padding: 14px 24px; background: #273c75; color: white; text-decoration: none; border-radius: 12px; font-weight: 700; }
  .tab-navigation.svelte-o9fzdu {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
    flex-wrap: wrap;
  }

  .tab-button.svelte-o9fzdu {
    padding: 10px 20px;
    border: 1px solid #ccc;
    background: white;
    cursor: pointer;
    border-radius: 8px;
  }

  .tab-button.active.svelte-o9fzdu {
    background: #fab45a;
    color: black;
    border-color: #fab45a;
  }

  .classcontainer.svelte-o9fzdu {
    padding: 15px;
    background-color: white;
    display: flex;
    flex-direction: column;
    margin-bottom: 15px;
    gap: 10px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    border-radius: 8px;
    flex: none;
    color: black;
    align-items: flex-start;
  }

  .classcontainer.svelte-o9fzdu h3:where(.svelte-o9fzdu) {
    margin: 0 0 15px 0;
    color: #333;
  }

  /* Override nested component styles for cleaner integration */
  .classcontainer .teacher-performance-rating {
    max-width: none;
    margin: 0;
    padding: 0;
  }


  .background.svelte-1rk2842 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #fffffa;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .content.svelte-1rk2842 {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 400px;
    margin: 20px auto
  }

  div.svelte-1rk2842 {
    padding: 15px;
  }

  form.svelte-1rk2842 {
    width: 90%;
    padding: 15px;
    background-color: #eeebdb;
    border-radius: 10px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .form-title.svelte-1rk2842 {
    color: #14695b;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 12px;
    text-align: center;
  }

  .form-description.svelte-1rk2842 {
    color: #14695b;
    font-size: 14px;
    margin-bottom: 15px;
    text-align: center;
    line-height: 1.3;
  }

  label.svelte-1rk2842 {
    display: block;
    margin-top: 10px;
    font-weight: bold;
    align-self: baseline;
    color: #14695b;
  }

  input.svelte-1rk2842, button.svelte-1rk2842 {
    width: -webkit-fill-available;
    display: block;
    padding: 10px;
    margin-top: 10px;
    border-radius: 5px;
    border: 1px solid #ddd;
  }

  button.svelte-1rk2842 {
    background-color: #fab45a;
    color: #674a25;
    font-weight: bold;
    border: 1px solid;
    border-color: #674a25;
    height: 50px;
    cursor: pointer;
  }

  button.svelte-1rk2842:hover:not(:disabled) {
    background-color: #674a25;
    color: #fab45a;
    border-color: #fab45a;
  }

  button.svelte-1rk2842:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .error-message.svelte-1rk2842 {
    color: red;
    font-weight: bold;
    margin-top: 10px;
    text-align: center;
  }

  .success-message.svelte-1rk2842 {
    color: green;
    font-weight: bold;
    margin-top: 10px;
    text-align: center;
  }

  .back-to-login.svelte-1rk2842 {
    margin-top: 8px;
    text-align: center;
    color: #14695b;
    font-size: 14px;
    cursor: pointer;
    text-decoration: underline;
  }

  .back-to-login.svelte-1rk2842:hover,
  .back-to-login.svelte-1rk2842:focus {
    color: #fab45a;
    outline: none;
    text-decoration: none;
    font-weight: bold;
  }

  @media (max-aspect-ratio: 4/3) {
    .content.svelte-1rk2842 {
      width: calc(100%-40px);
    }
  }

  @media (min-aspect-ratio: 4/3) {
    .content.svelte-1rk2842 {
      width: 80%;
      margin: 40px auto 0;
    }
  }


  .teacher-performance-page.svelte-1al7gms {
    max-width: 800px;
    margin: 0 auto;
    padding: 2em;
  }

  .teacher-performance-page.svelte-1al7gms h2:where(.svelte-1al7gms) {
    color: #fab45a;
    margin-bottom: 0.5em;
    text-align: center;
  }

  .description.svelte-1al7gms {
    color: #666;
    margin-bottom: 2em;
    font-size: 1.1em;
    text-align: center;
  }

  .month-selection.svelte-1al7gms {
    margin-bottom: 2em;
    text-align: center;
  }

  .month-selection.svelte-1al7gms label:where(.svelte-1al7gms) {
    display: block;
    margin-bottom: 0.5em;
    font-weight: bold;
    color: #333;
  }

  .month-dropdown.svelte-1al7gms {
    width: 100%;
    max-width: 300px;
    padding: 0.75em;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 1em;
    background-color: white;
    cursor: pointer;
    transition: border-color 0.2s;
    box-sizing: border-box;
  }

  .month-dropdown.svelte-1al7gms:focus {
    outline: none;
    border-color: #fab45a;
    box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
  }

  .month-dropdown.svelte-1al7gms:hover {
    border-color: #fab45a;
  }

  .loading-message.svelte-1al7gms {
    text-align: center;
    padding: 2em;
    color: #fab45a;
    font-size: 1.2em;
  }

  .teacher-info.svelte-1al7gms {
    background: #f8f9fa;
    border: 2px solid #fab45a;
    border-radius: 8px;
    padding: 1.5em;
    margin-bottom: 2em;
  }

  .teacher-info.svelte-1al7gms h3:where(.svelte-1al7gms) {
    margin: 0 0 1em 0;
    color: #fab45a;
  }

  .teacher-info.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0.5em 0;
    font-size: 1em;
  }

  .error-message.svelte-1al7gms {
    color: #d32f2f;
    background: #ffebee;
    padding: 1em;
    border-radius: 6px;
    border-left: 4px solid #d32f2f;
    margin-top: 1em;
  }

  .error-actions.svelte-1al7gms {
    margin-top: 1em;
    text-align: center;
  }

  .retry-button.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    font-size: 0.9em;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .retry-button.svelte-1al7gms:hover {
    background-color: #e09a43;
  }

  /* All the styles from TeacherPerformanceRating.svelte for data display */
  .retention-container.svelte-1al7gms {
    margin-top: 2em;
    padding: 15px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
  }

  .retention-container.svelte-1al7gms h3:where(.svelte-1al7gms) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.2em;
  }

  .retention-summary.svelte-1al7gms {
    margin-bottom: 20px;
    padding: 10px;
    background-color: #f8f9fa;
    border-radius: 6px;
    text-align: center;
  }

  .retention-rate.svelte-1al7gms {
    font-size: 1.3em;
    color: #fab45a;
    margin-bottom: 5px;
  }

  .retention-summary.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0;
    color: #666;
    font-size: 0.9em;
  }

  .month-comparison.svelte-1al7gms {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }

  /* Payment breakdown specific styling */
  .payment-breakdown-container.svelte-1al7gms {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }

  .payment-section.svelte-1al7gms {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .payment-section.svelte-1al7gms h5:where(.svelte-1al7gms) {
    margin: 0 0 12px 0;
    color: #fab45a;
    font-size: 1em;
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
  }

  .class-count-list.svelte-1al7gms {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .class-count-list.svelte-1al7gms li:where(.svelte-1al7gms) {
    padding: 6px 0;
    font-size: 0.9em;
    border-bottom: 1px solid #e9ecef;
  }

  .class-count-list.svelte-1al7gms li:where(.svelte-1al7gms):last-child {
    border-bottom: none;
  }

  .total-classes.svelte-1al7gms {
    background-color: #e8f5e8;
    color: #2e7d32;
    padding: 6px 8px;
    border-radius: 4px;
    margin-top: 6px;
    border: none !important;
  }

  .payment-total-only.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    padding: 12px;
    border-radius: 8px;
    margin-top: 20px;
    text-align: center;
  }

  .payment-total-only.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0;
    font-size: 1.1em;
  }

  .month-data.svelte-1al7gms {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .month-data.svelte-1al7gms h4:where(.svelte-1al7gms) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1em;
  }

  .month-data.svelte-1al7gms ul:where(.svelte-1al7gms) {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .month-data.svelte-1al7gms li:where(.svelte-1al7gms) {
    padding: 3px 0;
    font-size: 0.9em;
  }

  .student-details.svelte-1al7gms {
    margin-bottom: 15px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .student-details.svelte-1al7gms h4:where(.svelte-1al7gms) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1em;
  }

  .student-list.svelte-1al7gms {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 5px;
  }

  .student-list.svelte-1al7gms li:where(.svelte-1al7gms) {
    padding: 3px 0;
    font-size: 0.9em;
    color: #555;
  }

  /* Comments analysis styles */
  .comments-section.svelte-1al7gms {
    margin-bottom: 20px;
  }

  .comments-section.svelte-1al7gms h4:where(.svelte-1al7gms) {
    margin: 0 0 10px 0;
    color: #333;
    font-size: 1.1em;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
  }

  .comments-section.svelte-1al7gms h5:where(.svelte-1al7gms) {
    margin: 0 0 8px 0;
    color: #fab45a;
    font-size: 1em;
  }

  .metrics-grid.svelte-1al7gms {
    display: grid;
    gap: 15px;
    margin-top: 10px;
  }

  .metric-item.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 12px;
    border-radius: 6px;
  }

  .metric-item.svelte-1al7gms strong:where(.svelte-1al7gms) {
    display: block;
    margin-bottom: 8px;
    color: #333;
    font-size: 0.9em;
  }

  .metric-bar.svelte-1al7gms {
    width: 100%;
    height: 20px;
    background-color: #e9ecef;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 5px;
  }

  .metric-fill.svelte-1al7gms {
    height: 100%;
    background-color: #fab45a;
    transition: width 0.3s ease;
    border-radius: 10px;
  }

  .metric-item.svelte-1al7gms small:where(.svelte-1al7gms) {
    color: #666;
    font-size: 0.8em;
  }

  .sample-comments.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .comment-item.svelte-1al7gms {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e9ecef;
  }

  .comment-item.svelte-1al7gms:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }

  .comment-item.svelte-1al7gms strong:where(.svelte-1al7gms) {
    color: #fab45a;
    font-size: 0.9em;
    margin-right: 8px;
  }

  .comment-item.svelte-1al7gms span:where(.svelte-1al7gms) {
    color: #555;
    font-size: 0.9em;
    line-height: 1.4;
  }

  .no-data.svelte-1al7gms {
    text-align: center;
    padding: 20px;
    color: #666;
    font-style: italic;
    background-color: #f8f9fa;
    border-radius: 6px;
  }

  .no-data-message.svelte-1al7gms {
    text-align: center;
    padding: 30px 20px;
    color: #666;
    background-color: #f8f9fa;
    border-radius: 8px;
    margin: 20px 0;
    border: 1px solid #e9ecef;
  }

  .no-data-message.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 10px 0;
    font-size: 1.1em;
  }

  .no-data-message.svelte-1al7gms p:where(.svelte-1al7gms):first-child {
    font-weight: 500;
    color: #333;
  }

  /* Completion and punctuality specific styles */
  .weekly-trends.svelte-1al7gms {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-top: 10px;
  }

  .week-item.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 12px;
    border-radius: 6px;
    text-align: center;
  }

  .week-item.svelte-1al7gms strong:where(.svelte-1al7gms) {
    display: block;
    color: #fab45a;
    margin-bottom: 8px;
    font-size: 0.9em;
  }

  .week-stats.svelte-1al7gms {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
  }

  .week-stats.svelte-1al7gms span:where(.svelte-1al7gms) {
    font-size: 0.8em;
    color: #555;
  }

  .week-stats.svelte-1al7gms .late-incidents:where(.svelte-1al7gms) {
    color: #d32f2f;
    font-size: 0.75em;
    font-weight: 500;
  }

  .week-item.svelte-1al7gms small:where(.svelte-1al7gms) {
    color: #666;
    font-size: 0.75em;
  }

  .incident-summary.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .incident-summary.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0 0 10px 0;
    color: #333;
  }

  .incident-summary.svelte-1al7gms ul:where(.svelte-1al7gms) {
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0;
  }

  .incident-summary.svelte-1al7gms li:where(.svelte-1al7gms) {
    padding: 4px 0;
    font-size: 0.9em;
    color: #555;
  }

  .incident-details.svelte-1al7gms {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e9ecef;
  }

  .incident-details.svelte-1al7gms h5:where(.svelte-1al7gms) {
    margin: 0 0 10px 0;
    color: #fab45a;
    font-size: 0.95em;
  }

  .incident-item.svelte-1al7gms {
    background-color: white;
    padding: 10px;
    margin-bottom: 8px;
    border-radius: 4px;
    border-left: 3px solid #fab45a;
  }

  .incident-item.svelte-1al7gms:last-child {
    margin-bottom: 0;
  }

  .incident-item.svelte-1al7gms strong:where(.svelte-1al7gms) {
    display: block;
    color: #333;
    margin-bottom: 4px;
    font-size: 0.9em;
  }

  .incident-item.svelte-1al7gms small:where(.svelte-1al7gms) {
    display: block;
    color: #666;
    font-size: 0.8em;
    margin-bottom: 4px;
  }

  .incident-item.svelte-1al7gms span:where(.svelte-1al7gms) {
    display: block;
    color: #555;
    font-size: 0.85em;
    line-height: 1.4;
  }

  .no-incidents.svelte-1al7gms {
    text-align: center;
    padding: 20px;
    background-color: #e8f5e8;
    border-radius: 6px;
    color: #2e7d32;
    font-weight: 500;
  }

  .no-incidents.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0;
  }

  /* Student attendance specific styles */
  .attendance-details.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .attendance-item.svelte-1al7gms {
    background-color: white;
    padding: 12px;
    margin-bottom: 10px;
    border-radius: 4px;
    border-left: 3px solid #fab45a;
  }

  .attendance-item.svelte-1al7gms:last-child {
    margin-bottom: 0;
  }

  .attendance-header.svelte-1al7gms {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
  }

  .attendance-header.svelte-1al7gms strong:where(.svelte-1al7gms) {
    color: #333;
    font-size: 0.9em;
  }

  .attendance-rate.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 500;
  }

  .attendance-stats.svelte-1al7gms {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .attendance-stats.svelte-1al7gms small:where(.svelte-1al7gms) {
    color: #666;
    font-size: 0.8em;
  }

  /* (unused) .attendance-stats .no-show {
    color: #d32f2f;
    font-weight: 500;
  }*/

  .more-classes.svelte-1al7gms {
    text-align: center;
    padding: 10px;
    color: #666;
    font-style: italic;
  }

  .show-all-button-container.svelte-1al7gms {
    text-align: center;
    padding: 15px;
  }

  .show-all-button.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    font-size: 0.9em;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .show-all-button.svelte-1al7gms:hover {
    background-color: #e09a43;
  }

  /* Student feedback specific styles */
  .student-feedback.svelte-1al7gms {
    border-left-color: #2e7d32;
    background-color: #f8fff8;
  }

  .rating-info.svelte-1al7gms {
    display: flex;
    gap: 15px;
    margin-top: 6px;
    flex-wrap: wrap;
  }

  /* (unused) .rating-info small {
    background-color: #e8f5e8;
    padding: 2px 6px;
    border-radius: 4px;
    color: #2e7d32;
    font-size: 0.75em;
  }*/

  /* (unused) .rating-info .punctuality-issue {
    background-color: #ffebee;
    color: #d32f2f;
    font-weight: 500;
  }*/

  .more-reports.svelte-1al7gms {
    text-align: center;
    padding: 10px;
    color: #666;
    font-style: italic;
    background-color: #f0f8f0;
    border-radius: 4px;
    margin-top: 8px;
  }

  .missing-surveys.svelte-1al7gms {
    display: flex;
    flex-direction: column;
    gap: 1em;
  }

  .missing-item.svelte-1al7gms {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1em;
  }

  .missing-item.svelte-1al7gms strong:where(.svelte-1al7gms) {
    color: #dc2626;
  }

  .missing-badge.svelte-1al7gms {
    display: inline-block;
    background: #dc2626;
    color: white;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 0.5em;
  }

  .survey-ratings.svelte-1al7gms {
    display: flex;
    gap: 1em;
    margin-top: 0.5em;
    flex-wrap: wrap;
  }

  .survey-ratings.svelte-1al7gms span:where(.svelte-1al7gms) {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-size: 0.8em;
    color: #0369a1;
  }

  .class-details.svelte-1al7gms {
    margin-top: 0.5em;
    display: flex;
    flex-direction: column;
    gap: 0.25em;
  }

  .class-details.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0.5em 0;
    font-style: italic;
    color: #555;
  }

  .responsibility-breakdown.svelte-1al7gms {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 15px;
  }

  .teacher-incidents.svelte-1al7gms,
  .student-incidents.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 6px;
  }

  .student-incidents.svelte-1al7gms {
    border-left: 3px solid #fab45a;
  }

  .teacher-incidents.svelte-1al7gms {
    border-left: 3px solid #d32f2f;
  }

  .student-cancellation.svelte-1al7gms {
    background-color: #fff3e0;
    border-left-color: #fab45a;
  }

  .payment-note.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 4px;
    display: inline-block;
  }

  /* Payment analysis specific styles */
  .paid-class.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
  }

  .free-class.svelte-1al7gms {
    background-color: #e8f5e8;
    color: #2e7d32;
    border: 1px solid #2e7d32;
  }

  /* Special conditions styling */
  .special-conditions-container.svelte-1al7gms {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 4px;
  }

  .special-condition.svelte-1al7gms {
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    display: inline-block;
  }

  .ib-condition.svelte-1al7gms {
    background-color: #e3f2fd;
    color: #1976d2;
    border: 1px solid #1976d2;
  }

  .special-needs-condition.svelte-1al7gms {
    background-color: #fff3e0;
    color: #f57c00;
    border: 1px solid #f57c00;
  }

  .lithuanian-condition.svelte-1al7gms {
    background-color: #e8f5e8;
    color: #2e7d32;
    border: 1px solid #2e7d32;
  }

  .total-surcharge.svelte-1al7gms {
    background-color: #fab45a;
    color: black;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: bold;
    display: inline-block;
    border: 2px solid #e09a43;
  }

  .free-reason.svelte-1al7gms {
    background-color: #ffebee;
    color: #d32f2f;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    margin-top: 2px;
    display: inline-block;
  }

  .first-time.svelte-1al7gms {
    background-color: #fff3e0;
    color: #f57c00;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    margin-top: 2px;
    display: inline-block;
  }

  .retained.svelte-1al7gms {
    background-color: #e8f5e8;
    color: #2e7d32;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.75em;
    margin-top: 2px;
    display: inline-block;
  }

  /* Upcoming classes styling */
  .upcoming-class.svelte-1al7gms {
    opacity: 0.7;
    background-color: #f8f9fa;
    border-left: 4px solid #6c757d;
  }

  .upcoming-class.svelte-1al7gms:hover {
    opacity: 0.9;
  }

  /* Class status and payment layout */
  .class-status-payment.svelte-1al7gms {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .class-status.svelte-1al7gms {
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 500;
    text-transform: uppercase;
  }

  .class-status.completed.svelte-1al7gms {
    background-color: #d4edda;
    color: #155724;
  }

  .class-status.upcoming.svelte-1al7gms {
    background-color: #fff3cd;
    color: #856404;
  }

  /* Student rating summary styles */
  .student-rating-summary.svelte-1al7gms {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-top: 15px;
  }

  .rating-display.svelte-1al7gms {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 15px;
  }

  .rating-value.svelte-1al7gms {
    font-size: 2.5em;
    color: #fab45a;
    font-weight: bold;
    min-width: 120px;
  }

  .rating-details.svelte-1al7gms {
    flex: 1;
  }

  .rating-details.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 5px 0;
    color: #666;
  }

  .rating-details.svelte-1al7gms p:where(.svelte-1al7gms):first-child {
    font-weight: bold;
    color: #333;
    font-size: 1.1em;
  }

  .rating-bar-container.svelte-1al7gms {
    width: 100%;
  }

  /* Bonus Criteria Summary Section */
  .bonus-criteria-summary.svelte-1al7gms {
    margin-top: 2em;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
  }

  .bonus-criteria-summary.svelte-1al7gms h3:where(.svelte-1al7gms) {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 1.2em;
    text-align: center;
  }

  .criteria-grid.svelte-1al7gms {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
  }

  .criterion-card.svelte-1al7gms {
    display: flex;
    align-items: center;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
  }

  .criterion-card.eligible.svelte-1al7gms {
    border-left: 4px solid #28a745;
    background-color: #f8fff8;
  }

  .criterion-card.not-eligible.svelte-1al7gms {
    border-left: 4px solid #d32f2f;
    background-color: #fff3e0;
  }

  .criterion-icon.svelte-1al7gms {
    font-size: 2em;
    margin-right: 15px;
    color: #fab45a;
  }

  .criterion-content.svelte-1al7gms h4:where(.svelte-1al7gms) {
    margin: 0 0 5px 0;
    color: #333;
    font-size: 1em;
  }

  .criterion-value.svelte-1al7gms {
    font-size: 1.5em;
    font-weight: bold;
    color: #fab45a;
    margin-bottom: 5px;
  }

  .criterion-status.svelte-1al7gms {
    font-size: 0.8em;
    color: #666;
    font-weight: 500;
  }

  .criterion-status.met.svelte-1al7gms {
    color: #28a745;
    font-weight: bold;
  }

  .criterion-status.not-met.svelte-1al7gms {
    color: #d32f2f;
    font-weight: bold;
  }

  .bonus-eligibility-banner.svelte-1al7gms {
    margin-top: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    color: black;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .bonus-eligibility-banner.not-eligible.svelte-1al7gms {
    border-left: 4px solid #d32f2f;
    background-color: #fff3e0;
  }

  .bonus-icon.svelte-1al7gms {
    font-size: 2em;
    color: #fab45a;
  }

  .bonus-message.svelte-1al7gms h4:where(.svelte-1al7gms) {
    margin: 0 0 5px 0;
    color: #333;
    font-size: 1em;
  }

  .bonus-message.svelte-1al7gms p:where(.svelte-1al7gms) {
    margin: 0 0 5px 0;
    color: #666;
    font-size: 0.9em;
  }

  .bonus-message.svelte-1al7gms strong:where(.svelte-1al7gms) {
    color: #fab45a;
    font-weight: 500;
  }

  .bonus-message.svelte-1al7gms small:where(.svelte-1al7gms) {
    display: block;
    color: #666;
    font-size: 0.75em;
  }

  @media (max-width: 600px) {
    .teacher-performance-page.svelte-1al7gms {
      padding: 1em;
    }

    .month-comparison.svelte-1al7gms {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .student-list.svelte-1al7gms {
      grid-template-columns: 1fr;
    }

    .metrics-grid.svelte-1al7gms {
      grid-template-columns: 1fr;
    }

    .comment-item.svelte-1al7gms {
      padding: 8px 0;
    }

    .comment-item.svelte-1al7gms strong:where(.svelte-1al7gms),
    .comment-item.svelte-1al7gms span:where(.svelte-1al7gms) {
      display: block;
      margin-bottom: 4px;
    }

    .weekly-trends.svelte-1al7gms {
      grid-template-columns: 1fr;
    }

    .week-stats.svelte-1al7gms {
      flex-direction: column;
      gap: 2px;
    }

    .week-stats.svelte-1al7gms .late-incidents:where(.svelte-1al7gms) {
      font-size: 0.7em;
    }

    .incident-item.svelte-1al7gms strong:where(.svelte-1al7gms),
    .incident-item.svelte-1al7gms small:where(.svelte-1al7gms),
    .incident-item.svelte-1al7gms span:where(.svelte-1al7gms) {
      font-size: 0.85em;
    }

    .attendance-header.svelte-1al7gms {
      flex-direction: column;
      align-items: flex-start;
      gap: 4px;
    }

    .attendance-stats.svelte-1al7gms {
      gap: 1px;
    }

    .attendance-stats.svelte-1al7gms small:where(.svelte-1al7gms) {
      font-size: 0.75em;
    }

    .rating-info.svelte-1al7gms {
      flex-direction: column;
      gap: 4px;
    }

    /* (unused) .rating-info small {
      font-size: 0.7em;
    }*/

    .special-conditions-container.svelte-1al7gms {
      flex-direction: column;
      gap: 2px;
    }

    .special-condition.svelte-1al7gms,
    .total-surcharge.svelte-1al7gms {
      font-size: 0.7em;
      padding: 1px 4px;
    }

    .responsibility-breakdown.svelte-1al7gms {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .payment-breakdown-container.svelte-1al7gms {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .payment-section.svelte-1al7gms {
      padding: 12px;
    }

    .payment-section.svelte-1al7gms h5:where(.svelte-1al7gms) {
      font-size: 0.95em;
    }

    .class-count-list.svelte-1al7gms li:where(.svelte-1al7gms) {
      font-size: 0.85em;
      padding: 5px 0;
    }

    .total-classes.svelte-1al7gms {
      padding: 5px 6px;
      font-size: 0.85em;
    }

    .payment-total-only.svelte-1al7gms {
      padding: 10px;
      margin-top: 15px;
    }

    .payment-total-only.svelte-1al7gms p:where(.svelte-1al7gms) {
      font-size: 1em;
    }

    .rating-display.svelte-1al7gms {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }

    .rating-value.svelte-1al7gms {
      font-size: 2em;
      min-width: auto;
    }

    .student-rating-summary.svelte-1al7gms {
      padding: 15px;
    }

    /* Bonus criteria responsive styles */
    .criteria-grid.svelte-1al7gms {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .criterion-card.svelte-1al7gms {
      padding: 12px;
    }

    .criterion-icon.svelte-1al7gms {
      font-size: 1.5em;
      margin-right: 10px;
    }

    .criterion-value.svelte-1al7gms {
      font-size: 1.2em;
    }

    .bonus-eligibility-banner.svelte-1al7gms {
      flex-direction: column;
      text-align: center;
      gap: 15px;
    }

    .bonus-icon.svelte-1al7gms {
      font-size: 1.5em;
    }

    .month-dropdown.svelte-1al7gms {
      max-width: 100%;
    }
  }


    .classcontainer.svelte-qk3oxz {
        padding: 15px;
        background-color: white;
        display: flex;
        flex-direction: column;
        margin-bottom: 15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color: black;
        align-items: flex-start;
    }

    .classcontainer.svelte-qk3oxz h3:where(.svelte-qk3oxz) {
        margin: 0 0 15px 0;
        color: #333;
        font-size: 1.5rem;
    }

    .description.svelte-qk3oxz {
        color: #666;
        font-size: 0.95rem;
        margin: 0 0 20px 0;
        line-height: 1.4;
    }


    /* Import all styles from StandaloneInvoicesPage.svelte */
    button.svelte-1bi6owy span:where(.svelte-1bi6owy) {
         font-weight: bolder;
         font-size:larger;
     }

     button.svelte-1bi6owy {
        margin-top:10px;
         box-sizing: border-box;
         display: flex;
         flex-direction: row;
         justify-content: center;
         align-items: center;
         padding: 12px 20px;
         gap: 10px;

         width: 100%;
         height: 60px;

         /* Purple background */
         background-color: #fab45a;

         /* Black border */
         border: 2px solid #000000;

         /* Box shadow */
         box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

         /* Rounded corners */
         border-radius: 8px;

         /* Inside auto layout */
         flex: none;
         order: 0;
         align-self: stretch;
         flex-grow: 0;

         /* Remove default button styling */
         outline: none;
         cursor: pointer;

         /* Remove the default button background on focus */
         background-image: none;
         transition: background-color 0.3s ease, color 0.3s ease;
     }

     /* Button hover effect */
     button.svelte-1bi6owy:hover {
         background-color: #14695b;
         color:white;
     }

     /* Text inside the button */
     span.svelte-1bi6owy {
        margin-top: 5px;
        margin-bottom: 5px;
        font-size: 1rem;
        font-weight: bold;

     }
   form.svelte-1bi6owy {
       padding-bottom: 10px;
       padding-top:15px;
   }
   span.svelte-1bi6owy {
       font-weight: bold;
   }

   label.svelte-1bi6owy {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 5px;
          display: block;
          color:#14695b;
          text-align: center;
      }

      .balance-info.svelte-1bi6owy {
          margin: 1rem 0 1.5rem 0;
          padding: 1rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          border-left: 4px solid #14695b;
          text-align: center;
      }

      .balance-info.svelte-1bi6owy > div:where(.svelte-1bi6owy) {
          margin-bottom: 8px;
      }

      .balance-label.svelte-1bi6owy {
          font-weight: 600;
          color: #14695b;
          display: inline;
      }

      .balance-amount.svelte-1bi6owy {
          font-weight: 700;
          font-size: 1.1em;
          color: #333;
          margin-left: 8px;
      }

      .balance-date.svelte-1bi6owy {
          color: #666;
          font-size: 0.9em;
          margin-left: 8px;
      }

      .loading-container.svelte-1bi6owy {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
      }

      .loading-spinner.svelte-1bi6owy {
          width: 40px;
          height: 40px;
          border: 4px solid #f3f3f3;
          border-top: 4px solid #14695b;
          border-radius: 50%;
          animation: svelte-1bi6owy-spin 1s linear infinite;
          margin-bottom: 1rem;
      }

      @keyframes svelte-1bi6owy-spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
      }

      .loading-text.svelte-1bi6owy {
          color: #666;
          font-size: 1rem;
          margin: 0;
      }

      .error-container.svelte-1bi6owy {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
          background-color: #fff3f3;
          border-radius: 8px;
          border-left: 4px solid #dc3545;
      }

      .error-text.svelte-1bi6owy {
          color: #dc3545;
          font-size: 1rem;
          margin-bottom: 1rem;
          text-align: center;
      }

      .error-container.svelte-1bi6owy button:where(.svelte-1bi6owy) {
          background-color: #dc3545;
          color: white;
          border: none;
          padding: 0.5rem 1rem;
          border-radius: 4px;
          cursor: pointer;
          font-size: 0.9rem;
      }

      .error-container.svelte-1bi6owy button:where(.svelte-1bi6owy):hover {
          background-color: #c82333;
      }

      .payments-section.svelte-1bi6owy {
          margin-top: 2rem;
          padding-top: 2rem;
          border-top: 2px solid #e9ecef;
      }

      .payments-header.svelte-1bi6owy {
          color: #14695b;
          font-size: 1.5rem;
          font-weight: 600;
          margin-bottom: 0.5rem;
      }

      .payments-description.svelte-1bi6owy {
          color: #666;
          font-size: 1rem;
          margin-bottom: 1.5rem;
          line-height: 1.4;
      }

      .no-payments-section.svelte-1bi6owy {
          margin-top: 2rem;
          padding: 2rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          text-align: center;
      }

      .no-payments-text.svelte-1bi6owy {
          font-size: 1rem;
          color: #333;
      }

      /* Admin-specific styles */
      .admin-header.svelte-1bi6owy {
          background-color: #dc3545;
          color: white;
          padding: 1rem;
          margin-bottom: 2rem;
          border-radius: 8px;
          text-align: center;
      }

      .admin-title.svelte-1bi6owy {
          font-size: 1.5rem;
          font-weight: bold;
          margin: 0 0 0.5rem 0;
      }

      .admin-subtitle.svelte-1bi6owy {
          font-size: 1rem;
          margin: 0;
          opacity: 0.9;
      }

      .student-selector.svelte-1bi6owy {
          margin-bottom: 2rem;
          padding: 1.5rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          border-left: 4px solid #dc3545;
      }

      .student-selector.svelte-1bi6owy label:where(.svelte-1bi6owy) {
          color: #dc3545;
          font-size: 1.2rem;
          margin-bottom: 1rem;
          display: block;
      }

      .input-container.svelte-1bi6owy {
          position: relative;
          margin-top: 15px;
      }

      .search-input.svelte-1bi6owy {
          width: 100%;
          padding: 12px;
          border: 1px solid #ddd;
          border-radius: 6px;
          font-size: 0.9em;
          background-color: white;
          box-sizing: border-box;
      }

      .search-input.svelte-1bi6owy:focus {
          outline: none;
          border-color: #14695b;
          box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.2);
      }

      .autocomplete-list.svelte-1bi6owy {
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          background: white;
          border: 1px solid #ddd;
          border-top: none;
          border-radius: 0 0 6px 6px;
          max-height: 200px;
          overflow-y: auto;
          z-index: 1000;
          box-shadow: 0 2px 8px rgba(0,0,0,0.1);
      }

      .autocomplete-list-item.svelte-1bi6owy {
          padding: 0.25rem 0.5rem;
          cursor: pointer;
          border-bottom: 1px solid #f0f0f0;
          transition: background-color 0.2s ease;
      }

      .autocomplete-list-item.svelte-1bi6owy:hover {
          background-color: #f8f9fa;
      }

      .autocomplete-list-item.svelte-1bi6owy:last-child {
          border-bottom: none;
      }

      .student-option.svelte-1bi6owy {
          display: flex;
          flex-direction: column;
          gap: 0;
      }

      .student-name.svelte-1bi6owy {
          font-weight: 500;
          color: #333;
          font-size: 0.8em;
          line-height: 1.1;
      }

      .student-email.svelte-1bi6owy {
          color: #666;
          font-size: 0.7em;
          line-height: 1.1;
      }

      .student-id.svelte-1bi6owy {
          color: #dc3545;
          font-size: 0.65em;
          font-weight: 500;
          line-height: 1.1;
      }

      .selected-student-badge.svelte-1bi6owy {
          display: inline-flex;
          align-items: center;
          background-color: #d1ecf1;
          color: #0c5460;
          padding: 0.5rem 0.75rem;
          border-radius: 6px;
          font-size: 0.9rem;
          margin-top: 0.5rem;
      }

      .selected-student-badge.svelte-1bi6owy .remove-selection:where(.svelte-1bi6owy) {
          background: none;
          border: none;
          color: #0c5460;
          margin-left: 0.5rem;
          cursor: pointer;
          font-weight: bold;
          font-size: 1.2rem;
          padding: 0;
          width: auto;
          height: auto;
      }

      .selected-student-badge.svelte-1bi6owy .remove-selection:where(.svelte-1bi6owy):hover {
          color: #062c33;
          background: none;
      }

      .form-help.svelte-1bi6owy {
          font-size: 0.9rem;
          color: #666;
          margin-top: 0.5rem;
      }

      .selected-student-info.svelte-1bi6owy {
          margin-top: 1rem;
          padding: 1rem;
          background-color: white;
          border-radius: 4px;
          border: 1px solid #ddd;
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          gap: 15px;
      }

      .selected-student-details.svelte-1bi6owy {
          flex: 1;
      }

      .student-info-label.svelte-1bi6owy {
          font-weight: 600;
          color: #dc3545;
      }

      .btn-clear-selection.svelte-1bi6owy {
          padding: 8px 16px;
          background-color: #6c757d;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          font-size: 0.85em;
          white-space: nowrap;
          transition: background-color 0.2s;
      }

      .btn-clear-selection.svelte-1bi6owy:hover {
          background-color: #545b62;
      }

      .debug-warning.svelte-1bi6owy {
          background-color: #fff3cd;
          border: 1px solid #ffeaa7;
          border-left: 4px solid #f39c12;
          padding: 1rem;
          margin-bottom: 1rem;
          border-radius: 4px;
      }

      .debug-warning-title.svelte-1bi6owy {
          font-weight: bold;
          color: #856404;
          margin-bottom: 0.5rem;
      }

      .debug-warning-text.svelte-1bi6owy {
          color: #856404;
          margin: 0;
      }

      /* Loaded months info styles */
      .loaded-months-info.svelte-1bi6owy {
          margin: 1rem 0;
          padding: 0.75rem;
          background-color: #f8f9fa;
          border-radius: 6px;
          border-left: 3px solid #14695b;
      }

      .loaded-months-header.svelte-1bi6owy {
          font-weight: 600;
          color: #14695b;
          margin-bottom: 0.5rem;
          font-size: 0.95rem;
      }

      .loaded-months-list.svelte-1bi6owy {
          font-size: 0.85rem;
          color: #666;
      }

      .loaded-month.svelte-1bi6owy {
          display: inline-block;
          background-color: #14695b;
          color: white;
          padding: 3px 6px;
          margin: 1px;
          border-radius: 3px;
          font-size: 0.75rem;
      }

      .loaded-month.baseline-month.svelte-1bi6owy {
          background-color: #ffc107;
          color: #000;
          border: 1px solid #f39c12;
          font-weight: 600;
      }

      /* Expand/collapse button styles */
      .expand-button-container.svelte-1bi6owy {
          display: flex;
          justify-content: center;
          gap: 10px;
          margin: 1rem 0;
          flex-wrap: wrap;
      }

      .expand-btn.svelte-1bi6owy {
          display: flex;
          align-items: center;
          gap: 6px;
          padding: 8px 20px;
          background-color: #e9ecef;
          color: #495057;
          border: 1px solid #ced4da;
          border-radius: 25px; /* Oval shape */
          cursor: pointer;
          font-size: 0.85rem;
          font-weight: 500;
          transition: all 0.2s ease;
          min-width: 120px;
          justify-content: center;
          box-shadow: 0 1px 3px rgba(0,0,0,0.1);
      }

      .expand-btn.svelte-1bi6owy:hover:not(:disabled) {
          background-color: #14695b;
          color: white;
          border-color: #14695b;
          transform: translateY(-1px);
          box-shadow: 0 2px 6px rgba(0,0,0,0.15);
      }

      .expand-btn.svelte-1bi6owy:disabled {
          background-color: #f8f9fa;
          color: #adb5bd;
          border-color: #e9ecef;
          cursor: not-allowed;
          opacity: 0.6;
          transform: none;
          box-shadow: none;
      }

      .expand-btn.loading.svelte-1bi6owy {
          background-color: #fff3cd;
          color: #856404;
          border-color: #ffeaa7;
      }

      .expand-text.svelte-1bi6owy {
          font-size: 0.8rem;
          white-space: nowrap;
      }

      .expand-btn.remove-btn.svelte-1bi6owy {
          background-color: #f8d7da;
          color: #721c24;
          border-color: #f5c6cb;
      }

      .expand-btn.remove-btn.svelte-1bi6owy:hover:not(:disabled) {
          background-color: #dc3545;
          color: white;
          border-color: #dc3545;
      }


    /* Import schedule styles from Schedule.svelte */
    .classcontainer.svelte-o9l7m2{
        padding: 15px;
        background-color: #eeebdb;
        display: flex;
        flex-direction: column;
        margin-bottom:15px;
        gap: 10px;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        border-radius: 8px;
        flex: none;
        color:black;
        align-items: flex-start;
    }

    .no-classes-message.svelte-o9l7m2 {
        padding: 30px;
        text-align: center;
        background-color: #f8f9fa;
        border-radius: 8px;
        margin: 20px 0;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    }

    .no-classes-message.svelte-o9l7m2 p:where(.svelte-o9l7m2) {
        color: #6c757d;
        font-size: 16px;
        margin: 0;
        font-weight: 500;
    }

    .reschedule-tab.svelte-o9l7m2 {
        width: 100%;
        margin-top: 10px;
    }

    .reschedule-tab-button.svelte-o9l7m2 {
        width: 100%;
        padding: 15px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 16px;
        font-weight: bold;
        transition: background-color 0.3s, color 0.3s;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        position: relative;
    }

    .reschedule-tab-button.active.svelte-o9l7m2 {
        background-color: #fab45a;
        color: black;
        border-color: #fab45a;
    }

    .reschedule-tab-button.svelte-o9l7m2:hover {
        background-color: #fab45a;
        color: black;
    }

    .teacher-registration-tab.svelte-o9l7m2 {
        width: 100%;
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .teacher-registration-button.svelte-o9l7m2 {
        width: 100%;
        padding: 15px 20px;
        border: 1px solid #ccc;
        background: white;
        cursor: pointer;
        border-radius: 8px;
        font-size: 16px;
        font-weight: bold;
        transition: background-color 0.3s, color 0.3s;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        position: relative;
    }

    .teacher-registration-button.svelte-o9l7m2:hover {
        background-color: #fab45a;
        color: black;
    }

    .count-badge.svelte-o9l7m2 {
        background-color: #dc3545;
        color: white;
        border-radius: 50%;
        padding: 4px 8px;
        font-size: 12px;
        font-weight: bold;
        min-width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    /* Admin-specific styles (from AdminStudentInvoiceViewer) */
    .admin-header.svelte-o9l7m2 {
        background-color: #dc3545;
        color: white;
        padding: 1rem;
        margin-bottom: 2rem;
        border-radius: 8px;
        text-align: center;
    }

    .admin-title.svelte-o9l7m2 {
        font-size: 1.5rem;
        font-weight: bold;
        margin: 0 0 0.5rem 0;
    }

    .admin-subtitle.svelte-o9l7m2 {
        font-size: 1rem;
        margin: 0;
        opacity: 0.9;
    }

    .student-selector.svelte-o9l7m2 {
        margin-bottom: 2rem;
        padding: 1.5rem;
        background-color: #f8f9fa;
        border-radius: 8px;
        border-left: 4px solid #dc3545;
    }

    .student-selector.svelte-o9l7m2 label:where(.svelte-o9l7m2) {
        color: #dc3545;
        font-size: 1.2rem;
        margin-bottom: 1rem;
        display: block;
    }

    .input-container.svelte-o9l7m2 {
        position: relative;
        margin-top: 15px;
    }

    .search-input.svelte-o9l7m2 {
        width: 100%;
        padding: 12px;
        border: 2px solid #ddd;
        border-radius: 6px;
        font-size: 1rem;
        background-color: white;
    }

    .search-input.svelte-o9l7m2:focus {
        outline: none;
        border-color: #dc3545;
        box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.2);
    }

    .autocomplete-list.svelte-o9l7m2 {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        border: 1px solid #ddd;
        border-top: none;
        border-radius: 0 0 6px 6px;
        max-height: 200px;
        overflow-y: auto;
        z-index: 1000;
        list-style: none;
        padding: 0;
        margin: 0;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }

    .autocomplete-list.svelte-o9l7m2 li:where(.svelte-o9l7m2) {
        border-bottom: 1px solid #f0f0f0;
    }

    .autocomplete-list.svelte-o9l7m2 li:where(.svelte-o9l7m2):last-child {
        border-bottom: none;
    }

    .autocomplete-list.svelte-o9l7m2 button:where(.svelte-o9l7m2) {
        width: 100%;
        padding: 12px;
        border: none;
        background: none;
        text-align: left;
        cursor: pointer;
        transition: background-color 0.2s;
    }

    .autocomplete-list.svelte-o9l7m2 button:where(.svelte-o9l7m2):hover {
        background-color: #f8f9fa;
    }

    .student-option.svelte-o9l7m2 {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .student-name.svelte-o9l7m2 {
        font-weight: 500;
        color: #333;
        font-size: 0.9em;
    }

    .student-email.svelte-o9l7m2 {
        color: #666;
        font-size: 0.8em;
    }

    .student-id.svelte-o9l7m2 {
        color: #dc3545;
        font-size: 0.75em;
        font-weight: 500;
    }

    .selected-student-info.svelte-o9l7m2 {
        margin-top: 1rem;
        padding: 1rem;
        background-color: white;
        border-radius: 4px;
        border: 1px solid #ddd;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 15px;
    }

    .selected-student-details.svelte-o9l7m2 {
        flex: 1;
    }

    .student-info-label.svelte-o9l7m2 {
        font-weight: 600;
        color: #dc3545;
    }

    .btn-clear-selection.svelte-o9l7m2 {
        padding: 8px 16px;
        background-color: #6c757d;
        color: white;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-size: 0.85em;
        white-space: nowrap;
        transition: background-color 0.2s;
    }

    .btn-clear-selection.svelte-o9l7m2:hover {
        background-color: #545b62;
    }

    .debug-warning.svelte-o9l7m2 {
        background-color: #fff3cd;
        border: 1px solid #ffeaa7;
        border-left: 4px solid #f39c12;
        padding: 1rem;
        margin-bottom: 1rem;
        border-radius: 4px;
    }

    .debug-warning-title.svelte-o9l7m2 {
        font-weight: bold;
        color: #856404;
        margin-bottom: 0.5rem;
    }

    .debug-warning-text.svelte-o9l7m2 {
        color: #856404;
        margin: 0;
    }

    .loading-container.svelte-o9l7m2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 2rem;
        margin: 2rem 0;
    }

    .loading-spinner.svelte-o9l7m2 {
        width: 40px;
        height: 40px;
        border: 4px solid #f3f3f3;
        border-top: 4px solid #14695b;
        border-radius: 50%;
        animation: svelte-o9l7m2-spin 1s linear infinite;
        margin-bottom: 1rem;
    }

    @keyframes svelte-o9l7m2-spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }

    .loading-text.svelte-o9l7m2 {
        color: #666;
        font-size: 1rem;
        margin: 0;
    }

    .error-container.svelte-o9l7m2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 2rem;
        margin: 2rem 0;
        background-color: #fff3f3;
        border-radius: 8px;
        border-left: 4px solid #dc3545;
    }

    .error-text.svelte-o9l7m2 {
        color: #dc3545;
        font-size: 1rem;
        margin-bottom: 1rem;
        text-align: center;
    }

    .error-container.svelte-o9l7m2 button:where(.svelte-o9l7m2) {
        background-color: #dc3545;
        color: white;
        border: none;
        padding: 0.5rem 1rem;
        border-radius: 4px;
        cursor: pointer;
        font-size: 0.9rem;
    }

    .error-container.svelte-o9l7m2 button:where(.svelte-o9l7m2):hover {
        background-color: #c82333;
    }


    /* ========== STYLES FROM StandaloneInvoicesPage.svelte ========== */
    button.svelte-2kor05 span:where(.svelte-2kor05) {
         font-weight: bolder;
         font-size:larger;
     }

     button.svelte-2kor05 {
        margin-top:10px;
         box-sizing: border-box;
         display: flex;
         flex-direction: row;
         justify-content: center;
         align-items: center;
         padding: 12px 20px;
         gap: 10px;

         width: 100%;
         height: 60px;

         /* Purple background */
         background-color: #fab45a;

         /* Black border */
         border: 2px solid #000000;

         /* Box shadow */
         box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);

         /* Rounded corners */
         border-radius: 8px;

         /* Inside auto layout */
         flex: none;
         order: 0;
         align-self: stretch;
         flex-grow: 0;

         /* Remove default button styling */
         outline: none;
         cursor: pointer;

         /* Remove the default button background on focus */
         background-image: none;
         transition: background-color 0.3s ease, color 0.3s ease;
     }

     /* Button hover effect */
     button.svelte-2kor05:hover {
         background-color: #14695b;
         color:white;
     }

     /* Text inside the button */
     span.svelte-2kor05 {
        margin-top: 5px;
        margin-bottom: 5px;
        font-size: 1rem;
        font-weight: bold;

     }
   form.svelte-2kor05 {
       padding-bottom: 10px;
       padding-top:15px;
   }
   span.svelte-2kor05 {
       font-weight: bold;
   }

   label.svelte-2kor05 {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 5px;
          display: block;
          color:#14695b;
          text-align: center;
      }

      .balance-info.svelte-2kor05 {
          margin: 1rem 0 1.5rem 0;
          padding: 1rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          border-left: 4px solid #14695b;
          text-align: center;
      }

      .balance-info.svelte-2kor05 > div:where(.svelte-2kor05) {
          margin-bottom: 8px;
      }

      .balance-label.svelte-2kor05 {
          font-weight: 600;
          color: #14695b;
          display: inline;
      }

      .balance-amount.svelte-2kor05 {
          font-weight: 700;
          font-size: 1.1em;
          color: #333;
          margin-left: 8px;
      }

      .balance-date.svelte-2kor05 {
          color: #666;
          font-size: 0.9em;
          margin-left: 8px;
      }

      .loading-container.svelte-2kor05 {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
      }

      .loading-spinner.svelte-2kor05 {
          width: 40px;
          height: 40px;
          border: 4px solid #f3f3f3;
          border-top: 4px solid #14695b;
          border-radius: 50%;
          animation: svelte-2kor05-spin 1s linear infinite;
          margin-bottom: 1rem;
      }

      @keyframes svelte-2kor05-spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
      }

      .loading-text.svelte-2kor05 {
          color: #666;
          font-size: 1rem;
          margin: 0;
      }

      .error-container.svelte-2kor05 {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 2rem;
          margin: 2rem 0;
          background-color: #fff3f3;
          border-radius: 8px;
          border-left: 4px solid #dc3545;
      }

      .error-text.svelte-2kor05 {
          color: #dc3545;
          font-size: 1rem;
          margin-bottom: 1rem;
          text-align: center;
      }

      .error-container.svelte-2kor05 button:where(.svelte-2kor05) {
          background-color: #dc3545;
          color: white;
          border: none;
          padding: 0.5rem 1rem;
          border-radius: 4px;
          cursor: pointer;
          font-size: 0.9rem;
      }

      .error-container.svelte-2kor05 button:where(.svelte-2kor05):hover {
          background-color: #c82333;
      }

      .payments-section.svelte-2kor05 {
          margin-top: 2rem;
          padding-top: 2rem;
          border-top: 2px solid #e9ecef;
      }

      .payments-header.svelte-2kor05 {
          color: #14695b;
          font-size: 1.5rem;
          font-weight: 600;
          margin-bottom: 0.5rem;
      }

      .payments-description.svelte-2kor05 {
          color: #666;
          font-size: 1rem;
          margin-bottom: 1.5rem;
          line-height: 1.4;
      }

      .no-payments-section.svelte-2kor05 {
          margin-top: 2rem;
          padding: 2rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          text-align: center;
      }

      .no-payments-text.svelte-2kor05 {
          font-size: 1rem;
          color: #333;
      }

      .class-window-toggle.svelte-2kor05 {
          width: auto;
          height: auto;
          min-height: 36px;
          margin: 0;
          padding: 0.45rem 0.9rem;
          align-self: center;
          border: 1px solid #14695b;
          background-color: #fff7ec;
          color: #14695b;
          font-size: 0.9rem;
          font-weight: 600;
      }

      .class-window-controls.svelte-2kor05 {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          gap: 0.5rem;
          margin: 0.65rem 0;
      }

      /* ========== ADMIN-SPECIFIC STYLES ========== */
      .admin-banner.svelte-2kor05 {
          background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
          color: white;
          padding: 0.75rem 1rem;
          margin-bottom: 1.5rem;
          border-radius: 8px;
          text-align: center;
          box-shadow: 0 2px 8px rgba(0,0,0,0.15);
      }

      .admin-banner-title.svelte-2kor05 {
          font-size: 1.1rem;
          font-weight: bold;
          margin: 0 0 0.25rem 0;
      }

      .admin-banner-subtitle.svelte-2kor05 {
          font-size: 0.9rem;
          margin: 0;
          opacity: 0.95;
      }

      .student-selector.svelte-2kor05 {
          margin-bottom: 2rem;
          padding: 1.5rem;
          background-color: #f8f9fa;
          border-radius: 8px;
          border-left: 4px solid #667eea;
      }

      .student-selector-label.svelte-2kor05 {
          color: #667eea;
          font-size: 1.1rem;
          font-weight: 600;
          margin-bottom: 1rem;
          display: block;
      }

      .form-help.svelte-2kor05 {
          font-size: 0.9rem;
          color: #666;
          margin-top: 0.5rem;
      }

      .input-container.svelte-2kor05 {
          position: relative;
          margin-top: 15px;
      }

      .search-input.svelte-2kor05 {
          width: 100%;
          padding: 12px;
          border: 1px solid #ddd;
          border-radius: 6px;
          font-size: 0.9em;
          background-color: white;
          box-sizing: border-box;
      }

      .search-input.svelte-2kor05:focus {
          outline: none;
          border-color: #14695b;
          box-shadow: 0 0 0 2px rgba(20, 105, 91, 0.2);
      }

      .autocomplete-list.svelte-2kor05 {
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          background: white;
          border: 1px solid #ddd;
          border-top: none;
          border-radius: 0 0 6px 6px;
          max-height: 200px;
          overflow-y: auto;
          z-index: 1000;
          box-shadow: 0 2px 8px rgba(0,0,0,0.1);
      }

      .autocomplete-list-item.svelte-2kor05 {
          padding: 0.25rem 0.5rem;
          cursor: pointer;
          border-bottom: 1px solid #f0f0f0;
          transition: background-color 0.2s ease;
      }

      .autocomplete-list-item.svelte-2kor05:hover {
          background-color: #f8f9fa;
      }

      .autocomplete-list-item.svelte-2kor05:last-child {
          border-bottom: none;
      }

      .student-option.svelte-2kor05 {
          display: flex;
          flex-direction: column;
          gap: 0;
      }

      .student-name.svelte-2kor05 {
          font-weight: 500;
          color: #333;
          font-size: 0.8em;
          line-height: 1.1;
      }

      .student-email.svelte-2kor05 {
          color: #666;
          font-size: 0.7em;
          line-height: 1.1;
      }

      .student-id.svelte-2kor05 {
          color: #667eea;
          font-size: 0.65em;
          font-weight: 500;
          line-height: 1.1;
      }

      .selected-student-badge.svelte-2kor05 {
          display: inline-flex;
          align-items: center;
          background-color: #d1ecf1;
          color: #0c5460;
          padding: 0.5rem 0.75rem;
          border-radius: 6px;
          font-size: 0.9rem;
          margin-top: 0.5rem;
      }

      .selected-student-badge.svelte-2kor05 .remove-selection:where(.svelte-2kor05) {
          background: none;
          border: none;
          color: #0c5460;
          margin-left: 0.5rem;
          cursor: pointer;
          font-weight: bold;
          font-size: 1.2rem;
          padding: 0;
          width: auto;
          height: auto;
      }

      .selected-student-badge.svelte-2kor05 .remove-selection:where(.svelte-2kor05):hover {
          color: #062c33;
          background: none;
      }

      .selected-student-info.svelte-2kor05 {
          margin-top: 1rem;
          padding: 1rem;
          background-color: white;
          border-radius: 4px;
          border: 1px solid #ddd;
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          gap: 15px;
      }

      .selected-student-details.svelte-2kor05 {
          flex: 1;
      }

      .student-info-label.svelte-2kor05 {
          font-weight: 600;
          color: #667eea;
      }

      .btn-clear-selection.svelte-2kor05 {
          padding: 8px 16px;
          background-color: #6c757d;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          font-size: 0.85em;
          white-space: nowrap;
          transition: background-color 0.2s;
      }

      .btn-clear-selection.svelte-2kor05:hover {
          background-color: #545b62;
      }

      /* Payment button override for admin view */
      .payment-disabled.svelte-2kor05 {
          background-color: #6c757d !important;
          cursor: not-allowed !important;
          opacity: 0.7;
      }

      .payment-disabled.svelte-2kor05:hover {
          background-color: #5a6268 !important;
      }

      /* ========== NEGATIVE BALANCE USERS STYLES ========== */
      .negative-balance-container.svelte-2kor05 {
          margin-bottom: 2rem;
          padding: 1.5rem;
          background-color: #fff5f5;
          border-radius: 8px;
          border-left: 4px solid #dc3545;
      }

      .negative-balance-header.svelte-2kor05 {
          color: #dc3545;
          font-size: 1.1rem;
          font-weight: 600;
          margin-bottom: 0.5rem;
          display: flex;
          align-items: center;
          gap: 8px;
      }

      .header-row.svelte-2kor05 {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 0.5rem;
      }

      .btn-recalculate.svelte-2kor05 {
          padding: 0;
          background-color: #667eea;
          color: white;
          border: none;
          border-radius: 6px;
          cursor: pointer;
          font-size: 1.5em;
          font-weight: 600;
          transition: background-color 0.2s;
          display: flex;
          align-items: center;
          justify-content: center;
          height: 40px;
          width: 80px;
          margin-top: 0;
          box-shadow: 0 2px 4px rgba(0,0,0,0.1);
      }

      .btn-recalculate.svelte-2kor05:hover:not(:disabled) {
          background-color: #5568d3;
      }

      .btn-recalculate.svelte-2kor05:disabled {
          background-color: #9ca3af;
          cursor: not-allowed;
          opacity: 0.6;
      }

      .btn-recalculate.active.svelte-2kor05 {
          background-color: #dc3545;
      }

      .btn-recalculate.active.svelte-2kor05:hover:not(:disabled) {
          background-color: #c82333;
      }

      .negative-balance-footer.svelte-2kor05 {
          margin-top: 1rem;
          padding-top: 0.75rem;
          border-top: 1px dashed #f5c6cb;
          display: flex;
          justify-content: flex-end;
      }

      .btn-sync-student.svelte-2kor05 {
          padding: 8px 14px;
          height: auto;
          width: auto;
          background-color: #667eea;
          color: white;
          border: none;
          border-radius: 6px;
          cursor: pointer;
          font-size: 0.85rem;
          font-weight: 600;
          line-height: 1;
          display: inline-flex;
          align-items: center;
          gap: 8px;
          transition: background-color 0.2s;
          box-shadow: 0 2px 4px rgba(0,0,0,0.1);
      }

      .btn-sync-student.svelte-2kor05:hover:not(:disabled) {
          background-color: #5568d3;
      }

      .btn-sync-student.svelte-2kor05:disabled {
          background-color: #9ca3af;
          cursor: not-allowed;
          opacity: 0.7;
      }

      .btn-sync-icon.svelte-2kor05 {
          font-size: 1.1em;
      }

      .btn-recalculate.svelte-2kor05 .spinner:where(.svelte-2kor05) {
          width: 10px;
          height: 10px;
          border: 2px solid #fff;
          border-top: 2px solid transparent;
          border-radius: 50%;
          animation: svelte-2kor05-spin 0.8s linear infinite;
      }

      .negative-balance-count.svelte-2kor05 {
          background-color: #dc3545;
          color: white;
          padding: 2px 10px;
          border-radius: 12px;
          font-size: 0.9rem;
          font-weight: bold;
      }

      .negative-balance-subtitle.svelte-2kor05 {
          color: #666;
          font-size: 0.9rem;
          margin-bottom: 1rem;
      }

      .negative-balance-list.svelte-2kor05 {
          max-height: 250px;
          overflow-y: auto;
          background-color: white;
          border-radius: 6px;
          border: 1px solid #ddd;
      }

      .negative-balance-list.svelte-2kor05::-webkit-scrollbar {
          width: 6px;
      }

      .negative-balance-list.svelte-2kor05::-webkit-scrollbar-track {
          background: #f1f1f1;
          border-radius: 3px;
      }

      .negative-balance-list.svelte-2kor05::-webkit-scrollbar-thumb {
          background: #dc3545;
          border-radius: 3px;
      }

      .negative-balance-list.svelte-2kor05::-webkit-scrollbar-thumb:hover {
          background: #c82333;
      }

      .negative-balance-item.svelte-2kor05 {
          padding: 0.25rem 0.5rem;
          border-bottom: 1px solid #f0f0f0;
          display: flex;
          justify-content: space-between;
          align-items: center;
          transition: background-color 0.2s;
          cursor: pointer;
      }

      .negative-balance-item.svelte-2kor05:hover {
          background-color: #f8f9fa;
      }

      .negative-balance-item.svelte-2kor05:last-child {
          border-bottom: none;
      }

      .user-info.svelte-2kor05 {
          flex: 1;
          display: flex;
          flex-direction: column;
          gap: 0;
      }

      .user-name.svelte-2kor05 {
          font-weight: 500;
          color: #333;
          font-size: 0.8em;
          line-height: 1.1;
      }

      .user-email.svelte-2kor05 {
          color: #666;
          font-size: 0.7em;
          line-height: 1.1;
      }

      .user-id.svelte-2kor05 {
          color: #999;
          font-size: 0.65em;
          line-height: 1.1;
      }

      .balance-value.svelte-2kor05 {
          font-weight: 700;
          font-size: 0.8em;
          padding: 2px 6px;
          border-radius: 4px;
          white-space: nowrap;
      }

      .balance-negative.svelte-2kor05 {
          color: #dc3545;
          background-color: #ffebee;
      }

      .no-negative-balances.svelte-2kor05 {
          text-align: center;
          padding: 2rem;
          color: #28a745;
          background-color: white;
          border-radius: 6px;
          border: 1px solid #d4edda;
      }

      .no-negative-balances-icon.svelte-2kor05 {
          font-size: 2rem;
          margin-bottom: 0.5rem;
      }

      .no-negative-balances-text.svelte-2kor05 {
          font-weight: 500;
          font-size: 1rem;
      }


	.page.svelte-lrunu7 {
		padding: 18px 22px 30px;
		background: #f6f7fb;
	}

	.section.svelte-lrunu7 {
		margin-bottom: 22px;
	}

	.section-title.svelte-lrunu7 {
		margin: 0 0 10px 0;
		font-size: 18px;
	}

	.section-title-row.svelte-lrunu7 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0 0 10px 0;
	}

	.tools-grid.svelte-lrunu7 {
		/* Masonry-style layout to avoid large empty gaps when some cards are collapsed */
		column-count: 3;
		column-gap: 24px;
	}

	/* Cards inside a column layout */
	.tools-grid.svelte-lrunu7 > .card:where(.svelte-lrunu7) {
		break-inside: avoid;
		/* keep card's flex layout, but prevent horizontal overlap */
		display: flex;
		width: 100%;
		box-sizing: border-box;
		margin: 0 0 16px;
	}

	.widgets-grid.svelte-lrunu7 {
		/* Match tools-grid stacking behavior (masonry-style columns). */
		column-count: 2;
		column-gap: 16px;
	}

	.widgets-grid.svelte-lrunu7 > .card:where(.svelte-lrunu7) {
		break-inside: avoid;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		margin: 0 0 16px;
	}

	.widget-dock.svelte-lrunu7 {
		margin: 10px 0 14px;
		padding: 12px;
		border-radius: 10px;
		background: rgba(255, 255, 255, 0.7);
		border: 1px solid rgba(0, 0, 0, 0.08);
	}

	.widget-dock-label.svelte-lrunu7 {
		font-weight: 800;
		color: #1f2937;
		margin-bottom: 8px;
	}

	.widget-dock-buttons.svelte-lrunu7 {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.dock-btn.svelte-lrunu7 {
		padding: 6px 10px;
		border: 1px solid rgba(0, 0, 0, 0.14);
		background: rgba(255, 255, 255, 0.95);
		border-radius: 999px;
		cursor: pointer;
		font-size: 12px;
		font-weight: 700;
		color: #111827;
	}

	.dock-btn.svelte-lrunu7:hover {
		background: white;
	}

	.widgets-empty.svelte-lrunu7 {
		/* Ensure the empty state spans full width in column layout */
		column-span: all;
	}

	.card.svelte-lrunu7 {
		padding: 15px;
		background-color: white;
		display: flex;
		flex-direction: column;
		gap: 10px;
		box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
		border-radius: 8px;
		color: black;
		align-items: stretch;
	}

	/* Widget theming: makes boundaries obvious */
	.card.widget.svelte-lrunu7 {
		background: var(--tint, #fff);
		border-left: 6px solid var(--accent, transparent);
	}

	/* Tool theming: same visual separation as widgets */
	.card.tool.svelte-lrunu7 {
		background: var(--tint, #fff);
		border-left: 6px solid var(--accent, transparent);
	}

	.tool-create-users.svelte-lrunu7 {
		--accent: #0ea5e9;
		--tint: #e0f2fe;
	}
	.tool-manual-payments.svelte-lrunu7 {
		--accent: #6366f1;
		--tint: #eef2ff;
	}
	.tool-db-refresh.svelte-lrunu7 {
		--accent: #6b7280;
		--tint: #f3f4f6;
	}
	.tool-class-emails.svelte-lrunu7 {
		--accent: #14b8a6;
		--tint: #ccfbf1;
	}
	.tool-bulk-emails.svelte-lrunu7 {
		--accent: #a855f7;
		--tint: #f5f3ff;
	}
	.tool-sms.svelte-lrunu7 {
		--accent: #f97316;
		--tint: #ffedd5;
	}
	.tool-families.svelte-lrunu7 {
		--accent: #14695b;
		--tint: #e6f4f1;
	}

	.info-card.svelte-lrunu7 {
		--accent: #2563eb;
		--tint: #eff6ff;
	}
	.pricing-card.svelte-lrunu7 {
		--accent: #7c3aed;
		--tint: #f5f3ff;
	}
	.comments-card.svelte-lrunu7 {
		--accent: #d97706;
		--tint: #fffbeb;
	}
	.schedule-card.svelte-lrunu7 {
		--accent: #059669;
		--tint: #ecfdf5;
	}
	.invoice-card.svelte-lrunu7 {
		--accent: #dc2626;
		--tint: #fef2f2;
	}

	.widget-header.svelte-lrunu7 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
	}

	.widget-actions.svelte-lrunu7 {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.widget-title.svelte-lrunu7 {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 6px 8px;
		border: 0;
		background: transparent;
		font-weight: 800;
		color: #1f2937;
		cursor: pointer;
		border-radius: 8px;
		text-align: left;
	}

	.widget-title.svelte-lrunu7:hover {
		background: rgba(255, 255, 255, 0.7);
	}

	.widget-title.svelte-lrunu7:focus {
		outline: 2px solid rgba(20, 105, 91, 0.4);
		outline-offset: 2px;
	}

	.chevron.svelte-lrunu7 {
		font-size: 14px;
		opacity: 0.9;
	}

	.widget-body.svelte-lrunu7 {
		width: 100%;
	}

	.widget-body.scroll.svelte-lrunu7 {
		max-height: 650px;
		overflow: auto;
		padding: 10px;
		border-radius: 8px;
		border: 1px solid rgba(0, 0, 0, 0.08);
		background: rgba(255, 255, 255, 0.75);
	}

	.selected-row.svelte-lrunu7 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin: 10px 0 14px;
		padding: 10px 12px;
		border-radius: 8px;
		background: rgba(248, 249, 250, 0.92);
		backdrop-filter: blur(8px);
		border: 1px solid rgba(0, 0, 0, 0.08);
		position: sticky;
		top: 10px;
		z-index: 20;
	}

	.quick-actions.svelte-lrunu7 {
		margin-top: 8px;
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.toast.svelte-lrunu7 {
		margin: 10px 0 14px;
		padding: 10px 12px;
		border-radius: 8px;
		background: #e7f3ff;
		border: 1px solid #bcdcff;
		color: #0b3d69;
	}

	.muted.svelte-lrunu7 {
		color: #666;
		font-weight: 400;
	}

	.btn.svelte-lrunu7 {
		padding: 8px 12px;
		border: 1px solid #ccc;
		background: white;
		border-radius: 8px;
		cursor: pointer;
		white-space: nowrap;
	}

	.btn.small.svelte-lrunu7 {
		padding: 6px 10px;
		border-radius: 6px;
		font-size: 12px;
	}

	.link.svelte-lrunu7 {
		color: #14695b;
		text-decoration: underline;
		font-size: 12px;
		white-space: nowrap;
	}

	.empty.svelte-lrunu7 {
		padding: 18px 16px;
		border-radius: 8px;
		background: #f8f9fa;
		border: 1px solid #e0e0e0;
		color: #666;
	}

	@media (max-width: 1400px) {
		.tools-grid.svelte-lrunu7 {
			column-count: 2;
		}
	}

	@media (max-width: 1100px) {
		.tools-grid.svelte-lrunu7 {
			column-count: 1;
		}

		.widgets-grid.svelte-lrunu7 {
			column-count: 1;
		}
	}


	.teacher-search.svelte-a4r2cq {
		position: relative;
		width: 100%;
	}

	.search-row.svelte-a4r2cq {
		display: flex;
		gap: 10px;
		align-items: center;
	}

	.search-input.svelte-a4r2cq {
		flex: 1;
		width: 100%;
		padding: 12px 14px;
		border: 1px solid #ccc;
		border-radius: 8px;
		font-size: 14px;
	}

	.search-input.svelte-a4r2cq:disabled {
		background: #f7f7f7;
		cursor: not-allowed;
	}

	.spinner.svelte-a4r2cq {
		font-size: 12px;
		color: #666;
	}

	.change-btn.svelte-a4r2cq {
		padding: 10px 14px;
		border: 1px solid #ccc;
		background: white;
		border-radius: 8px;
		cursor: pointer;
		white-space: nowrap;
	}

	.selected-card.svelte-a4r2cq {
		margin-top: 12px;
		padding: 12px 14px;
		border-radius: 8px;
		border: 1px solid #bcdcff;
		background: #e7f3ff;
	}

	.results.svelte-a4r2cq {
		margin-top: 8px;
		border: 1px solid #e0e0e0;
		border-radius: 8px;
		background: white;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
		max-height: 320px;
		overflow: auto;
	}

	.result.svelte-a4r2cq {
		padding: 10px 12px;
		border-bottom: 1px solid #f0f0f0;
		cursor: pointer;
		outline: none;
	}

	.result.svelte-a4r2cq:hover,
	.result.svelte-a4r2cq:focus {
		background: #f8f9fa;
	}

	.result.svelte-a4r2cq:last-child {
		border-bottom: none;
	}

	.name.svelte-a4r2cq {
		font-weight: 600;
		color: #222;
	}

	.meta.svelte-a4r2cq {
		color: #666;
		font-size: 12px;
		margin-top: 2px;
	}

	.no-results.svelte-a4r2cq {
		margin-top: 8px;
		padding: 12px 14px;
		border-radius: 8px;
		background: #f8f9fa;
		border: 1px solid #e0e0e0;
		color: #666;
	}

	.error.svelte-a4r2cq {
		margin-bottom: 10px;
		padding: 10px 12px;
		border-radius: 8px;
		background: #ffebee;
		border: 1px solid #f5c6cb;
		color: #721c24;
	}


	.calendar-launch.svelte-1gblhnm { padding: 18px 24px 0; }
	.calendar-launch.svelte-1gblhnm .btn:where(.svelte-1gblhnm) { display: inline-block; padding: 14px 24px; background: #273c75; color: white; text-decoration: none; border-radius: 12px; font-weight: 700; }
	.page.svelte-1gblhnm {
		padding: 18px 22px 30px;
		background: #f6f7fb;
	}

	.section.svelte-1gblhnm {
		margin-bottom: 22px;
	}

	.section-title.svelte-1gblhnm {
		margin: 0 0 10px 0;
		font-size: 18px;
	}

	.section-title-row.svelte-1gblhnm {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0 0 10px 0;
	}

	.tools-grid.svelte-1gblhnm {
		column-count: 2;
		column-gap: 24px;
	}

	.tools-grid.svelte-1gblhnm > .card:where(.svelte-1gblhnm) {
		break-inside: avoid;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		margin: 0 0 16px;
	}

	.widgets-grid.svelte-1gblhnm {
		/* Match tools-grid stacking behavior (masonry-style columns). */
		column-count: 2;
		column-gap: 16px;
	}

	.widgets-grid.svelte-1gblhnm > .card:where(.svelte-1gblhnm) {
		break-inside: avoid;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		margin: 0 0 16px;
	}

	.widget-dock.svelte-1gblhnm {
		margin: 10px 0 14px;
		padding: 12px;
		border-radius: 10px;
		background: rgba(255, 255, 255, 0.7);
		border: 1px solid rgba(0, 0, 0, 0.08);
	}

	.widget-dock-label.svelte-1gblhnm {
		font-weight: 800;
		color: #1f2937;
		margin-bottom: 8px;
	}

	.widget-dock-buttons.svelte-1gblhnm {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.dock-btn.svelte-1gblhnm {
		padding: 6px 10px;
		border: 1px solid rgba(0, 0, 0, 0.14);
		background: rgba(255, 255, 255, 0.95);
		border-radius: 999px;
		cursor: pointer;
		font-size: 12px;
		font-weight: 700;
		color: #111827;
	}

	.dock-btn.svelte-1gblhnm:hover {
		background: white;
	}

	.widgets-empty.svelte-1gblhnm {
		column-span: all;
	}

	.card.svelte-1gblhnm {
		padding: 15px;
		background-color: white;
		display: flex;
		flex-direction: column;
		gap: 10px;
		box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
		border-radius: 8px;
		color: black;
		align-items: stretch;
	}

	.card.widget.svelte-1gblhnm,
	.card.tool.svelte-1gblhnm {
		background: var(--tint, #fff);
		border-left: 6px solid var(--accent, transparent);
	}

	.tool-find-teachers.svelte-1gblhnm {
		--accent: #0ea5e9;
		--tint: #e0f2fe;
	}
	.tool-db-refresh.svelte-1gblhnm {
		--accent: #6b7280;
		--tint: #f3f4f6;
	}
	.tool-incidents.svelte-1gblhnm {
		--accent: #dc2626;
		--tint: #fef2f2;
	}
	.tool-invoices.svelte-1gblhnm {
		--accent: #059669;
		--tint: #ecfdf5;
	}

	.performance-card.svelte-1gblhnm {
		--accent: #f59e0b;
		--tint: #fffbeb;
	}
	.info-card.svelte-1gblhnm {
		--accent: #2563eb;
		--tint: #eff6ff;
	}
	.pricing-card.svelte-1gblhnm {
		--accent: #7c3aed;
		--tint: #f5f3ff;
	}

	.widget-header.svelte-1gblhnm {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
	}

	.widget-actions.svelte-1gblhnm {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.widget-title.svelte-1gblhnm {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 6px 8px;
		border: 0;
		background: transparent;
		font-weight: 800;
		color: #1f2937;
		cursor: pointer;
		border-radius: 8px;
		text-align: left;
	}

	.widget-title.svelte-1gblhnm:hover {
		background: rgba(255, 255, 255, 0.7);
	}

	.widget-title.svelte-1gblhnm:focus {
		outline: 2px solid rgba(20, 105, 91, 0.4);
		outline-offset: 2px;
	}

	.chevron.svelte-1gblhnm {
		font-size: 14px;
		opacity: 0.9;
	}

	.widget-body.svelte-1gblhnm {
		width: 100%;
	}

	.widget-body.scroll.svelte-1gblhnm {
		max-height: 650px;
		overflow: auto;
		padding: 10px;
		border-radius: 8px;
		border: 1px solid rgba(0, 0, 0, 0.08);
		background: rgba(255, 255, 255, 0.75);
	}

	.selected-row.svelte-1gblhnm {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin: 10px 0 14px;
		padding: 10px 12px;
		border-radius: 8px;
		background: rgba(248, 249, 250, 0.92);
		backdrop-filter: blur(8px);
		border: 1px solid rgba(0, 0, 0, 0.08);
		position: sticky;
		top: 10px;
		z-index: 20;
	}

	.quick-actions.svelte-1gblhnm {
		margin-top: 8px;
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.toast.svelte-1gblhnm {
		margin: 10px 0 14px;
		padding: 10px 12px;
		border-radius: 8px;
		background: #e7f3ff;
		border: 1px solid #bcdcff;
		color: #0b3d69;
	}

	.muted.svelte-1gblhnm {
		color: #666;
		font-weight: 400;
	}

	.btn.svelte-1gblhnm {
		padding: 8px 12px;
		border: 1px solid #ccc;
		background: white;
		border-radius: 8px;
		cursor: pointer;
		white-space: nowrap;
	}

	.btn.small.svelte-1gblhnm {
		padding: 6px 10px;
		border-radius: 6px;
		font-size: 12px;
	}

	.empty.svelte-1gblhnm {
		padding: 18px 16px;
		border-radius: 8px;
		background: #f8f9fa;
		border: 1px solid #e0e0e0;
		color: #666;
	}

	@media (max-width: 1400px) {
		.tools-grid.svelte-1gblhnm {
			column-count: 1;
		}
	}

	@media (max-width: 1100px) {
		.widgets-grid.svelte-1gblhnm {
			column-count: 1;
		}
	}


    .attendance-report.svelte-y2rqk { color: #1f2937; }
    .filters.svelte-y2rqk { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
    label.svelte-y2rqk { display: grid; gap: 5px; font-size: 13px; font-weight: 600; }
    input.svelte-y2rqk { border: 1px solid #cbd5e1; border-radius: 7px; padding: 8px 10px; font: inherit; }
    button.svelte-y2rqk { border: 1px solid #2563eb; border-radius: 7px; background: #2563eb; color: white; padding: 8px 13px; cursor: pointer; font: inherit; }
    button.svelte-y2rqk:disabled { cursor: not-allowed; opacity: .55; }
    .state.svelte-y2rqk { padding: 20px; text-align: center; color: #64748b; }
    .state.error.svelte-y2rqk { color: #b91c1c; background: #fef2f2; border-radius: 8px; }
    .result-summary.svelte-y2rqk { margin-bottom: 10px; color: #64748b; font-size: 13px; }
    .class-list.svelte-y2rqk { display: grid; gap: 10px; }
    .class-card.svelte-y2rqk { border: 1px solid #e2e8f0; border-radius: 10px; overflow: hidden; background: white; }
    .class-summary.svelte-y2rqk { width: 100%; display: grid; grid-template-columns: auto minmax(220px, 1fr) auto; align-items: center; gap: 10px; border: 0; border-radius: 0; background: white; color: inherit; text-align: left; padding: 13px; }
    .class-summary.svelte-y2rqk:hover { background: #f8fafc; }
    .chevron.svelte-y2rqk { color: #64748b; }
    .class-identity.svelte-y2rqk { display: grid; gap: 3px; }
    .class-identity.svelte-y2rqk small:where(.svelte-y2rqk) { color: #64748b; font-weight: 400; }
    .counts.svelte-y2rqk { display: flex; gap: 6px; flex-wrap: wrap; justify-content: end; }
    .count.svelte-y2rqk, .status-badge.svelte-y2rqk { border-radius: 999px; padding: 3px 8px; font-size: 12px; font-weight: 700; white-space: nowrap; }
    .attended.svelte-y2rqk { color: #166534; background: #dcfce7; }
    .missing.svelte-y2rqk { color: #991b1b; background: #fee2e2; }
    .pending.svelte-y2rqk { color: #92400e; background: #fef3c7; }
    .unresolved.svelte-y2rqk { color: #5b21b6; background: #ede9fe; }
    .participants.svelte-y2rqk { border-top: 1px solid #e2e8f0; }
    .participant.svelte-y2rqk { display: grid; grid-template-columns: minmax(180px, 1.4fr) .6fr .7fr 1fr; gap: 10px; align-items: center; padding: 10px 13px; border-top: 1px solid #f1f5f9; font-size: 13px; }
    .participant.svelte-y2rqk:first-child { border-top: 0; }
    .participant.header.svelte-y2rqk { background: #f8fafc; color: #64748b; font-size: 11px; font-weight: 700; text-transform: uppercase; }
    .participant-name.svelte-y2rqk { display: grid; }
    .participant-name.svelte-y2rqk small:where(.svelte-y2rqk) { color: #7c3aed; }
    .role.svelte-y2rqk { text-transform: capitalize; }
    .pagination.svelte-y2rqk { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 16px; }
    @media (max-width: 720px) {
        .class-summary.svelte-y2rqk { grid-template-columns: auto 1fr; }
        .counts.svelte-y2rqk { grid-column: 2; justify-content: start; }
        .participant.svelte-y2rqk, .participant.header.svelte-y2rqk { grid-template-columns: 1fr .7fr .8fr; }
        .participant.svelte-y2rqk > :where(.svelte-y2rqk):last-child, .participant.header.svelte-y2rqk > :where(.svelte-y2rqk):last-child { grid-column: 1 / -1; }
    }


	.page.svelte-cobcdo {
		padding: 18px 22px 30px;
		background: #f6f7fb;
	}

	.section.svelte-cobcdo {
		margin-bottom: 22px;
	}

	.section-title.svelte-cobcdo {
		margin: 0 0 10px 0;
		font-size: 18px;
	}

	.section-title-row.svelte-cobcdo {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0 0 10px 0;
	}

	.widgets-grid.svelte-cobcdo {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
		align-items: start;
		/* Visually separate the widget area from the dock */
		padding: 14px;
		border-radius: 14px;
		background: rgba(255, 255, 255, 0.8);
		border: 1px solid rgba(0, 0, 0, 0.06);
	}

	.widgets-grid.svelte-cobcdo > .card:where(.svelte-cobcdo) {
		display: flex;
		box-sizing: border-box;
		margin: 0;
	}

	.widgets-grid.svelte-cobcdo > .attendance-card:where(.svelte-cobcdo) {
		grid-column: 1 / -1;
	}

	@supports not (color: color-mix(in srgb, red, blue)) {
		.widget-dock.svelte-cobcdo {
			background: #fff7ed; /* orange-50 */
			border-color: rgba(245, 158, 11, 0.25);
			box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
		}
		.widget-dock-label.svelte-cobcdo {
			color: #9a3412; /* orange-800 */
		}
		.dock-btn.svelte-cobcdo {
			background: #ffedd5; /* orange-100 */
			border-color: rgba(245, 158, 11, 0.35);
			color: #7c2d12; /* orange-900 */
		}
		.dock-btn.svelte-cobcdo:hover {
			background: #fed7aa; /* orange-200 */
			border-color: rgba(245, 158, 11, 0.55);
			box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
			transform: translateY(-1px);
		}
		.dock-btn.svelte-cobcdo:focus-visible {
			outline-color: rgba(245, 158, 11, 0.55);
		}
	}

	.widget-dock.svelte-cobcdo {
		--dock-orange: #f59e0b;
		margin: 10px 0 14px;
		padding: 14px 16px;
		border-radius: 12px;
		background:
			color-mix(in srgb, var(--dock-orange) 10%, transparent) 0 0 / 100% 100% no-repeat,
			color-mix(in srgb, Canvas 96%, var(--dock-orange) 4%);
		border: 1px solid color-mix(in srgb, var(--dock-orange) 28%, transparent);
		box-shadow: 0 1px 3px color-mix(in srgb, var(--dock-orange) 20%, transparent);
	}

	.widget-dock-label.svelte-cobcdo {
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: color-mix(in srgb, var(--dock-orange) 70%, #111827 30%);
		margin: 0 0 10px 0;
	}

	.widget-dock-buttons.svelte-cobcdo {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 10px;
		align-items: stretch;
	}

	.dock-btn.svelte-cobcdo {
		--dock-btn-bg: color-mix(in srgb, var(--dock-orange) 14%, transparent);
		--dock-btn-border: color-mix(in srgb, var(--dock-orange) 30%, transparent);
		--dock-btn-text: color-mix(in srgb, #111827 70%, var(--dock-orange) 30%);
		--dock-btn-shadow: color-mix(in srgb, var(--dock-orange) 25%, transparent);

		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		text-align: left;
		padding: 8px 10px;
		min-height: 36px;
		border: 1px solid var(--dock-btn-border);
		background: var(--dock-btn-bg);
		border-radius: 12px;
		cursor: pointer;
		font-size: 13px;
		font-weight: 600;
		color: var(--dock-btn-text);
		white-space: nowrap;
		transition:
			transform 0.15s ease,
			box-shadow 0.15s ease,
			background-color 0.15s ease,
			border-color 0.15s ease;
	}

	.dock-btn.svelte-cobcdo:hover {
		background: color-mix(in srgb, var(--dock-orange) 20%, transparent);
		border-color: color-mix(in srgb, var(--dock-orange) 44%, transparent);
		box-shadow: 0 2px 6px var(--dock-btn-shadow);
		transform: translateY(-1px);
	}

	.dock-btn.svelte-cobcdo:active {
		transform: translateY(0);
		box-shadow: 0 1px 2px var(--dock-btn-shadow);
	}

	.dock-btn.svelte-cobcdo:focus {
		outline: none;
	}

	.dock-btn.svelte-cobcdo:focus-visible {
		outline: 2px solid color-mix(in srgb, var(--dock-orange) 55%, transparent);
		outline-offset: 2px;
	}

	@media (prefers-reduced-motion: reduce) {
		.dock-btn.svelte-cobcdo {
			transition: none;
		}

		.dock-btn.svelte-cobcdo:hover {
			transform: none;
		}
	}

	@media (max-width: 1100px) {
		.widget-dock-buttons.svelte-cobcdo {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}
	}

	@media (max-width: 850px) {
		.widget-dock-buttons.svelte-cobcdo {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}
	}

	@media (max-width: 600px) {
		.widget-dock-buttons.svelte-cobcdo {
			grid-template-columns: 1fr;
		}
	}

	.widgets-empty.svelte-cobcdo {
		column-span: all;
	}

	.card.svelte-cobcdo {
		padding: 15px;
		background-color: white;
		display: flex;
		flex-direction: column;
		gap: 10px;
		box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
		border-radius: 8px;
		color: black;
		align-items: stretch;
	}

	.card.widget.svelte-cobcdo {
		background: var(--tint, #fff);
		border-left: 6px solid var(--accent, transparent);
	}

	.activity-card.svelte-cobcdo {
		--accent: #0ea5e9;
		--tint: #e0f2fe;
	}

	.activity-launch-body.svelte-cobcdo {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 18px;
		padding: 12px 8px 4px;
	}

	.activity-launch-body.svelte-cobcdo p:where(.svelte-cobcdo) {
		margin: 0;
		color: #475569;
	}

	.dashboard-launch.svelte-cobcdo {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: #0c131d;
		border: 1px solid #1b8d68;
		border-radius: 6px;
		color: #dce7f3;
		font-weight: 700;
		text-decoration: none;
		white-space: nowrap;
	}

	.dashboard-launch.large.svelte-cobcdo {
		padding: 10px 14px;
	}
	.reschedule-card.svelte-cobcdo {
		--accent: #f59e0b;
		--tint: #fffbeb;
	}
	.registration-requests-card.svelte-cobcdo {
		--accent: #2563eb;
		--tint: #eff6ff;
	}
	.registration-create-card.svelte-cobcdo {
		--accent: #7c3aed;
		--tint: #f5f3ff;
	}
	.sms-card.svelte-cobcdo {
		--accent: #f97316;
		--tint: #ffedd5;
	}
	.info-submit-card.svelte-cobcdo {
		--accent: #14b8a6;
		--tint: #ccfbf1;
	}
	.info-display-card.svelte-cobcdo {
		--accent: #06b6d4;
		--tint: #cffafe;
	}
	.teachers-list-card.svelte-cobcdo {
		--accent: #111827;
		--tint: #f3f4f6;
	}
	.students-list-card.svelte-cobcdo {
		--accent: #374151;
		--tint: #f9fafb;
	}
	.first-classes-card.svelte-cobcdo {
		--accent: #059669;
		--tint: #ecfdf5;
	}
	.balance-csv-card.svelte-cobcdo {
		--accent: #6b7280;
		--tint: #f3f4f6;
	}
	.revenue-csv-card.svelte-cobcdo {
		--accent: #dc2626;
		--tint: #fef2f2;
	}

	.widget-header.svelte-cobcdo {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
	}

	.widget-actions.svelte-cobcdo {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.widget-title.svelte-cobcdo {
		display: inline-flex;
		align-items: center;
		gap: 10px;
		padding: 6px 8px;
		border: 0;
		background: transparent;
		font-weight: 800;
		color: #1f2937;
		cursor: pointer;
		border-radius: 8px;
		text-align: left;
		/* Ensure all titles align perfectly across widgets */
		white-space: nowrap;
	}

	.widget-title.svelte-cobcdo:hover {
		background: rgba(255, 255, 255, 0.7);
	}

	.widget-title.svelte-cobcdo:focus {
		outline: 2px solid rgba(20, 105, 91, 0.4);
		outline-offset: 2px;
	}

	.chevron.svelte-cobcdo {
		/* Fixed width so title text starts on same x */
		width: 18px;
		display: inline-flex;
		justify-content: center;
		font-size: 14px;
		opacity: 0.9;
	}

	.widget-body.svelte-cobcdo {
		width: 100%;
	}

	.widget-body.scroll.svelte-cobcdo {
		max-height: 650px;
		overflow: auto;
		padding: 10px;
		border-radius: 8px;
		border: 1px solid rgba(0, 0, 0, 0.08);
		background: rgba(255, 255, 255, 0.75);
	}

	.btn.svelte-cobcdo {
		padding: 8px 12px;
		border: 1px solid #ccc;
		background: white;
		border-radius: 8px;
		cursor: pointer;
		white-space: nowrap;
	}

	.btn.small.svelte-cobcdo {
		padding: 6px 10px;
		border-radius: 6px;
		font-size: 12px;
	}

	.empty.svelte-cobcdo {
		padding: 18px 16px;
		border-radius: 8px;
		background: #f8f9fa;
		border: 1px solid #e0e0e0;
		color: #666;
	}

	@media (max-width: 1100px) {
		.widgets-grid.svelte-cobcdo {
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 600px) {
		.activity-launch-body.svelte-cobcdo {
			align-items: stretch;
			flex-direction: column;
		}
	}


  body{background:#070b12}.terminal.svelte-1kd8kyd{--panel:#0c131d;--line:#1c2a39;--text:#dce7f3;--muted:#708399;--green:#26d99a;--red:#ff5d73;min-height:100vh;background:#070b12;color:var(--text);padding:20px;font-family:Inter,system-ui,sans-serif}.masthead.svelte-1kd8kyd{display:flex;justify-content:space-between;gap:24px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:16px}.eyebrow.svelte-1kd8kyd,.quote-label.svelte-1kd8kyd,.panel-title.svelte-1kd8kyd,label.svelte-1kd8kyd,.basis.svelte-1kd8kyd,small.svelte-1kd8kyd{font:600 11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.09em;color:var(--muted)}h1.svelte-1kd8kyd{margin:5px 0 0;font-size:28px;letter-spacing:-.03em}h1.svelte-1kd8kyd span:where(.svelte-1kd8kyd){color:var(--green);font:600 11px ui-monospace,monospace;vertical-align:top}.controls.svelte-1kd8kyd{display:flex;gap:10px;align-items:end}label.svelte-1kd8kyd{display:grid;gap:5px}select.svelte-1kd8kyd,button.svelte-1kd8kyd{border:1px solid #294158;background:#101a27;color:var(--text);padding:9px 12px;font:600 12px ui-monospace,monospace}button.svelte-1kd8kyd{background:#1b8d68;border-color:#2bb88d;cursor:pointer}button.svelte-1kd8kyd:disabled{opacity:.45}.ticker.svelte-1kd8kyd{min-height:34px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);color:var(--muted);overflow:auto;white-space:nowrap;font:11px ui-monospace,monospace}.ticker.svelte-1kd8kyd b:where(.svelte-1kd8kyd){color:var(--text)}.dot.svelte-1kd8kyd{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px #26d99a66}.dot.live.svelte-1kd8kyd{animation:svelte-1kd8kyd-pulse 1.2s infinite}.market-grid.svelte-1kd8kyd{display:grid;grid-template-columns:repeat(5,minmax(175px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:16px}.quote-card.svelte-1kd8kyd{background:var(--panel);padding:15px;min-width:0}.quote-value.svelte-1kd8kyd{font:650 27px/1.25 ui-monospace,monospace;margin-top:8px;letter-spacing:-.05em}.delta.svelte-1kd8kyd{font:600 11px ui-monospace,monospace}.delta.svelte-1kd8kyd span:where(.svelte-1kd8kyd){color:var(--muted);font-weight:400}.positive.svelte-1kd8kyd{color:var(--green)}.negative.svelte-1kd8kyd,.warning.svelte-1kd8kyd{color:var(--red)}.neutral.svelte-1kd8kyd{color:var(--muted)}.quote-card.svelte-1kd8kyd svg:where(.svelte-1kd8kyd){width:100%;height:48px;margin:10px 0 4px;overflow:visible}.quote-card.svelte-1kd8kyd polyline:where(.svelte-1kd8kyd),.main-chart.svelte-1kd8kyd polyline:where(.svelte-1kd8kyd){fill:none;stroke:var(--green);stroke-width:2;vector-effect:non-scaling-stroke}.basis.svelte-1kd8kyd{text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px}.activity-strip.svelte-1kd8kyd{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-top:0;background:var(--panel)}.activity-strip.svelte-1kd8kyd>div:where(.svelte-1kd8kyd){padding:13px 15px;border-right:1px solid var(--line);display:grid;gap:5px}.activity-strip.svelte-1kd8kyd strong:where(.svelte-1kd8kyd){font:650 20px ui-monospace,monospace}.panels.svelte-1kd8kyd{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(400px,1fr);gap:16px;margin-top:16px}.panel.svelte-1kd8kyd{background:var(--panel);border:1px solid var(--line)}.panel-title.svelte-1kd8kyd{display:flex;justify-content:space-between;padding:11px 13px;border-bottom:1px solid var(--line);color:var(--text)}.panel-title.svelte-1kd8kyd span:where(.svelte-1kd8kyd):last-child{color:var(--muted)}.main-chart.svelte-1kd8kyd{width:100%;height:220px;padding:15px;box-sizing:border-box}.main-chart.svelte-1kd8kyd line:where(.svelte-1kd8kyd){stroke:#172535}.legend.svelte-1kd8kyd{padding:0 15px 13px;color:var(--muted);font:10px ui-monospace,monospace}.swatch.svelte-1kd8kyd{display:inline-block;width:14px;border-top:2px solid var(--green)}.table-wrap.svelte-1kd8kyd{max-height:270px;overflow:auto}table.svelte-1kd8kyd{width:100%;border-collapse:collapse;font:12px ui-monospace,monospace}th.svelte-1kd8kyd,td.svelte-1kd8kyd{text-align:right;padding:10px;border-bottom:1px solid #162332}th.svelte-1kd8kyd{position:sticky;top:0;background:#0c131d;color:var(--muted);font-size:9px}th.svelte-1kd8kyd:first-child,td.svelte-1kd8kyd:first-child{text-align:left}.muted.svelte-1kd8kyd{color:var(--muted);text-align:center!important}.alert.svelte-1kd8kyd,.empty.svelte-1kd8kyd{padding:18px;border:1px solid var(--line);margin-top:16px;font:12px ui-monospace,monospace}.error.svelte-1kd8kyd{border-color:#743040;color:#ff8797}.empty.svelte-1kd8kyd{color:var(--muted);min-height:180px;display:grid;place-items:center}.warnings.svelte-1kd8kyd{margin-top:16px;border:1px solid #55411f;padding:12px;color:#f4bd50;font:11px ui-monospace,monospace}.warnings.svelte-1kd8kyd pre:where(.svelte-1kd8kyd){white-space:pre-wrap;color:#b9a478}@keyframes svelte-1kd8kyd-pulse{50%{opacity:.25}}@media(max-width:1100px){.market-grid.svelte-1kd8kyd{grid-template-columns:repeat(2,1fr)}.panels.svelte-1kd8kyd{grid-template-columns:1fr}.activity-strip.svelte-1kd8kyd{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.terminal.svelte-1kd8kyd{padding:10px}.masthead.svelte-1kd8kyd{align-items:stretch;flex-direction:column}.controls.svelte-1kd8kyd{align-items:stretch}.controls.svelte-1kd8kyd label:where(.svelte-1kd8kyd){flex:1}.market-grid.svelte-1kd8kyd{grid-template-columns:1fr}.activity-strip.svelte-1kd8kyd{grid-template-columns:repeat(2,1fr)}.panels.svelte-1kd8kyd{display:block}.panel.svelte-1kd8kyd{margin-top:12px}}
  td.svelte-1kd8kyd small:where(.svelte-1kd8kyd){display:block;font-size:8px}.row-spark.svelte-1kd8kyd{display:block;width:70px;height:18px;margin-left:auto}.row-spark.svelte-1kd8kyd polyline:where(.svelte-1kd8kyd){fill:none;stroke:var(--green);stroke-width:1.5;vector-effect:non-scaling-stroke}.volume-panel.svelte-1kd8kyd{grid-column:1/-1}.volume-chart.svelte-1kd8kyd{height:150px;display:flex;align-items:end;gap:4px;padding:20px 15px 5px}.volume-day.svelte-1kd8kyd{height:100%;flex:1;display:flex;align-items:end;gap:1px;border-bottom:1px solid #294158}.bar.svelte-1kd8kyd{width:50%;min-height:1px;background:#26d99a99}.bar.completed.svelte-1kd8kyd{background:#f4bd50}.swatch.amber.svelte-1kd8kyd{border-color:#f4bd50;margin-left:12px}
  @media(max-width:650px){.market-grid.svelte-1kd8kyd{display:flex;overflow-x:auto}.quote-card.svelte-1kd8kyd{min-width:250px}}

  .bar.svelte-1kd8kyd{position:relative;cursor:crosshair}
  .bar.svelte-1kd8kyd::after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:20;transform:translate(-50%,4px);padding:6px 8px;border:1px solid #294158;border-radius:3px;background:#070b12;color:var(--text);box-shadow:0 5px 18px #000a;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s ease,transform .12s ease;font:600 10px ui-monospace,Consolas,monospace}
  .bar.svelte-1kd8kyd:hover::after,.bar.svelte-1kd8kyd:focus::after{opacity:1;transform:translate(-50%,0)}
  .bar.svelte-1kd8kyd:focus-visible{outline:2px solid #dce7f3;outline-offset:2px}
  .marker-hit.svelte-1kd8kyd{fill:transparent;cursor:crosshair}.marker-dot.svelte-1kd8kyd{fill:#070b12;stroke:var(--green);stroke-width:2;vector-effect:non-scaling-stroke;transition:fill .12s ease,r .12s ease}.chart-tooltip.svelte-1kd8kyd{opacity:0;pointer-events:none;transition:opacity .12s ease}.chart-tooltip.svelte-1kd8kyd rect:where(.svelte-1kd8kyd){fill:#070b12;stroke:#294158;stroke-width:1;vector-effect:non-scaling-stroke;filter:drop-shadow(0 5px 8px #0009)}.chart-tooltip.svelte-1kd8kyd text:where(.svelte-1kd8kyd){fill:var(--text);font:600 10px ui-monospace,Consolas,monospace;letter-spacing:.04em}.chart-tooltip.svelte-1kd8kyd .tooltip-date:where(.svelte-1kd8kyd){fill:var(--green)}.chart-marker.svelte-1kd8kyd:hover .chart-tooltip:where(.svelte-1kd8kyd),.chart-marker.svelte-1kd8kyd:focus .chart-tooltip:where(.svelte-1kd8kyd){opacity:1}.chart-marker.svelte-1kd8kyd:hover .marker-dot:where(.svelte-1kd8kyd),.chart-marker.svelte-1kd8kyd:focus .marker-dot:where(.svelte-1kd8kyd){fill:var(--green);r:5}.chart-marker.svelte-1kd8kyd:focus{outline:none}
  .expense-button.svelte-1kd8kyd{background:#18263a;border-color:#416185}.expense-ticker.svelte-1kd8kyd{border-top:1px solid #121d2a;background:#09101a}.expense-dot.svelte-1kd8kyd{background:#68a7ff;box-shadow:0 0 9px #68a7ff66}.cash-flow-grid.svelte-1kd8kyd{grid-template-columns:repeat(3,minmax(210px,1fr));margin-top:16px}.cash-flow-card.svelte-1kd8kyd{border-top:2px solid #294158}.expense-panels.svelte-1kd8kyd{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr);gap:16px;margin-top:16px}.category-list.svelte-1kd8kyd{max-height:430px;overflow:auto}.category-row.svelte-1kd8kyd,.payee-row.svelte-1kd8kyd{border-bottom:1px solid #162332}.category-row.svelte-1kd8kyd>summary:where(.svelte-1kd8kyd),.payee-row.svelte-1kd8kyd>summary:where(.svelte-1kd8kyd){display:grid;align-items:center;gap:10px;cursor:pointer;list-style:none;font:12px ui-monospace,monospace}.category-row.svelte-1kd8kyd>summary:where(.svelte-1kd8kyd){grid-template-columns:minmax(130px,1fr) minmax(80px,1fr) auto 46px;padding:12px}.payee-row.svelte-1kd8kyd>summary:where(.svelte-1kd8kyd){grid-template-columns:1fr auto;padding:9px 22px;background:#09111b}.category-bar.svelte-1kd8kyd{height:5px;background:#172535;overflow:hidden}.category-bar.svelte-1kd8kyd i:where(.svelte-1kd8kyd){display:block;height:100%;background:var(--green)}.category-row.svelte-1kd8kyd strong:where(.svelte-1kd8kyd),.payee-row.svelte-1kd8kyd strong:where(.svelte-1kd8kyd){font-weight:600;text-align:right}.category-row.svelte-1kd8kyd small:where(.svelte-1kd8kyd){text-align:right}.payee-row.svelte-1kd8kyd table:where(.svelte-1kd8kyd){background:#080e16}.payee-row.svelte-1kd8kyd td:where(.svelte-1kd8kyd):first-child{padding-left:35px}.category-empty.svelte-1kd8kyd{padding:30px}.expense-table.svelte-1kd8kyd{max-height:430px}.expense-table.svelte-1kd8kyd td:where(.svelte-1kd8kyd):nth-child(2),.expense-table.svelte-1kd8kyd td:where(.svelte-1kd8kyd):nth-child(3){text-align:left}.expense-table.svelte-1kd8kyd tr.non-expense:where(.svelte-1kd8kyd){opacity:.52}.source-unavailable.svelte-1kd8kyd{border-color:#40536c;color:#91a5bd}.expense-table.svelte-1kd8kyd small:where(.svelte-1kd8kyd){margin-top:3px}@media(max-width:1100px){.expense-panels.svelte-1kd8kyd{grid-template-columns:1fr}}@media(max-width:650px){.controls.svelte-1kd8kyd{flex-wrap:wrap}.cash-flow-grid.svelte-1kd8kyd{display:flex}.expense-panels.svelte-1kd8kyd{display:block}.expense-panels.svelte-1kd8kyd .panel:where(.svelte-1kd8kyd){margin-top:12px}.category-row.svelte-1kd8kyd>summary:where(.svelte-1kd8kyd){grid-template-columns:1fr auto auto}.category-bar.svelte-1kd8kyd{display:none}}


  .activity-dashboard-page.svelte-wz3dmq {
    min-height: 100vh;
    width: 100%;
    background: #070b12;
  }


  body:has(.calendar-page) main{padding:0;max-width:none;margin:0;width:100%}.calendar-page.svelte-a6ada9{min-height:100vh;background:#f8fafc;color:#243047}.workspace.svelte-a6ada9{display:grid;grid-template-columns:270px 1fr;min-height:calc(100vh - 64px)}aside.svelte-a6ada9{background:white;border-right:1px solid #e5eaf0;padding:22px 16px;box-sizing:border-box;height:calc(100vh - 64px);overflow-y:auto;position:sticky;top:64px}.create.svelte-a6ada9{border:0;border-radius:16px;background:#273c75;color:white;padding:14px 22px;font-weight:700;box-shadow:0 2px 8px #1b2a5030;margin-bottom:24px}.aside-heading.svelte-a6ada9{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.calendar-selection-actions.svelte-a6ada9{display:flex;gap:6px;white-space:nowrap}.aside-heading.svelte-a6ada9 button:where(.svelte-a6ada9){border:0;background:none;color:#3657a7;padding:0}.calendar-choice.svelte-a6ada9{display:grid;grid-template-columns:20px 12px 1fr;gap:8px;align-items:center;padding:8px 2px}.calendar-choice.svelte-a6ada9 i:where(.svelte-a6ada9){width:10px;height:10px;border-radius:3px}.calendar-choice.svelte-a6ada9 small:where(.svelte-a6ada9){grid-column:3;color:#b06026}.disabled.svelte-a6ada9{opacity:.55}.calendar-shell.svelte-a6ada9{min-width:0;padding:20px}.toolbar.svelte-a6ada9{display:flex;gap:9px;align-items:center;margin-bottom:16px}.toolbar.svelte-a6ada9 button:where(.svelte-a6ada9),.view-toggle.svelte-a6ada9 button:where(.svelte-a6ada9){border:1px solid #dce2e9;background:#fff;border-radius:8px;padding:8px 12px}.toolbar.svelte-a6ada9 h1:where(.svelte-a6ada9){font-size:22px;flex:1;margin:0 12px}.view-toggle.svelte-a6ada9 .active:where(.svelte-a6ada9){background:#e8eefc;color:#203f8a}.calendar-board.svelte-a6ada9{overflow-x:auto}.weekday-headings.svelte-a6ada9{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px;background:#fff;border:1px solid #dfe4ea;border-bottom:0}.weekday-headings.svelte-a6ada9 span:where(.svelte-a6ada9){padding:9px 5px;text-align:center;color:#667085;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.calendar-grid.svelte-a6ada9{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));grid-template-rows:repeat(6,minmax(110px,1fr));min-width:770px;background:#dfe4ea;border:1px solid #dfe4ea;gap:1px}.calendar-grid.week.svelte-a6ada9{grid-template-rows:minmax(620px,1fr)}.day.svelte-a6ada9{position:relative;background:#fff;min-width:0;padding:5px;overflow:hidden}.current-time.svelte-a6ada9{position:absolute;left:0;right:0;border-top:2px solid #d93025;z-index:2}.current-time.svelte-a6ada9:before{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:#d93025;left:0;top:-4px}.outside.svelte-a6ada9{background:#f6f7f9;color:#9299a4}.day-number.svelte-a6ada9{border:0;background:none;border-radius:50%;width:30px;height:30px}.event.svelte-a6ada9{display:flex;width:100%;gap:5px;text-align:left;border:0;border-left:4px solid var(--event);background:color-mix(in srgb,var(--event) 13%,white);border-radius:4px;padding:5px;margin:2px 0;overflow:hidden}.event.svelte-a6ada9 time:where(.svelte-a6ada9){font-size:10px}.event.svelte-a6ada9 span:where(.svelte-a6ada9){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty.svelte-a6ada9{height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#697386}.error.svelte-a6ada9,.notice.svelte-a6ada9{padding:10px 14px;margin-bottom:10px;border-radius:8px;display:flex;justify-content:space-between}.error.svelte-a6ada9{background:#fff0ee;color:#a72820}.notice.svelte-a6ada9{background:#e9f6ee;color:#176538}.error.svelte-a6ada9 button:where(.svelte-a6ada9),.notice.svelte-a6ada9 button:where(.svelte-a6ada9){border:0;background:none}.history.svelte-a6ada9{background:white;margin-top:16px;border:1px solid #e3e7ed;border-radius:10px}.history-title.svelte-a6ada9{width:100%;text-align:left;border:0;background:none;padding:13px;font-weight:700}.history-row.svelte-a6ada9{display:flex;gap:12px;justify-content:space-between;border-top:1px solid #edf0f4;padding:10px 13px;font-size:13px}.modal.svelte-a6ada9{position:fixed;inset:0;background:#15213d88;z-index:1000;display:grid;place-items:center;padding:20px}.dialog.svelte-a6ada9{background:white;border-radius:16px;padding:20px;width:min(720px,95vw);max-height:92vh;overflow:auto;box-shadow:0 20px 60px #0004}.dialog.svelte-a6ada9 header:where(.svelte-a6ada9),.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9){display:flex;align-items:center;gap:10px}.dialog.svelte-a6ada9 header:where(.svelte-a6ada9) h2:where(.svelte-a6ada9){flex:1}.dialog.svelte-a6ada9 header:where(.svelte-a6ada9) button:where(.svelte-a6ada9){border:0;background:none;font-size:25px}.dialog.svelte-a6ada9>label:where(.svelte-a6ada9),.dialog.svelte-a6ada9 fieldset:where(.svelte-a6ada9){display:block;margin:13px 0}.dialog.svelte-a6ada9 input:where(.svelte-a6ada9),.dialog.svelte-a6ada9 select:where(.svelte-a6ada9),.dialog.svelte-a6ada9 textarea:where(.svelte-a6ada9){box-sizing:border-box;border:1px solid #ccd3dd;border-radius:7px;padding:8px}.dialog.svelte-a6ada9>label:where(.svelte-a6ada9)>select:where(.svelte-a6ada9),.dialog.svelte-a6ada9>label:where(.svelte-a6ada9)>textarea:where(.svelte-a6ada9),.dialog.svelte-a6ada9>label:where(.svelte-a6ada9)>input:where(.svelte-a6ada9){display:block;width:100%;margin-top:5px}.generated-title.svelte-a6ada9{background:#f5f7fa;color:#39455a}.student-picker.svelte-a6ada9>input:where(.svelte-a6ada9){width:100%;margin-bottom:8px}.student-results.svelte-a6ada9{max-height:210px;overflow-y:auto;border:1px solid #e2e7ed;border-radius:8px;padding:5px}.selected-student.svelte-a6ada9{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;background:#f5f7fa;border-radius:9px;padding:8px;margin:6px 0}.selected-student.svelte-a6ada9 button:where(.svelte-a6ada9){border:0;background:none;font-size:20px;color:#6c7480}.add-student.svelte-a6ada9{border:1px dashed #9ca8b7;background:#fff;border-radius:8px;padding:8px 12px;margin-top:7px;color:#294c9b}.student-row.svelte-a6ada9,.notify.svelte-a6ada9{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:5px}.notify.svelte-a6ada9 label:where(.svelte-a6ada9){display:flex;align-items:center;gap:8px;flex:1}.notify.svelte-a6ada9>input:where(.svelte-a6ada9){min-width:230px}.notify.svelte-a6ada9 small:where(.svelte-a6ada9){color:#697386}.price.svelte-a6ada9{width:110px}.dates.svelte-a6ada9{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dates.svelte-a6ada9 label:where(.svelte-a6ada9),.date-field.svelte-a6ada9,.recurrence.svelte-a6ada9 label:where(.svelte-a6ada9){display:flex;flex-direction:column;gap:4px}.date-field.svelte-a6ada9 input:where(.svelte-a6ada9){width:100%}.selected-weekday.svelte-a6ada9{color:#667085;font-weight:600}.inline.svelte-a6ada9{display:inline-flex!important;align-items:center;gap:6px;margin-right:15px}.recurrence.svelte-a6ada9{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.weekdays.svelte-a6ada9{display:flex;gap:5px}.weekdays.svelte-a6ada9 label:where(.svelte-a6ada9){font-size:11px;align-items:center}.warning.svelte-a6ada9{display:block;color:#a14d14;margin-top:8px}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9){border-top:1px solid #e4e8ee;padding-top:15px;flex-wrap:wrap}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) span:where(.svelte-a6ada9){flex:1}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) button:where(.svelte-a6ada9){padding:9px 14px;border:1px solid #ccd3dd;border-radius:7px;background:#fff}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) .footer-error:where(.svelte-a6ada9){margin:0;flex:0 1 300px;padding:8px 10px;font-size:13px}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) .footer-error:where(.svelte-a6ada9) button:where(.svelte-a6ada9){padding:0;margin-left:8px}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) .primary:where(.svelte-a6ada9){background:#273c75;color:white}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) .danger:where(.svelte-a6ada9){color:#b3261e;border-color:#e6b6b2}@media(max-width:800px){.workspace.svelte-a6ada9{grid-template-columns:1fr}aside.svelte-a6ada9{border-right:0;height:auto;max-height:42vh;position:static}.calendar-shell.svelte-a6ada9{padding:8px}.calendar-grid.svelte-a6ada9{grid-template-columns:repeat(7,minmax(80px,1fr));min-width:560px}.weekday-headings.svelte-a6ada9{grid-template-columns:repeat(7,minmax(80px,1fr));min-width:560px}.dates.svelte-a6ada9{grid-template-columns:1fr}.selected-student.svelte-a6ada9{grid-template-columns:1fr auto}.selected-student.svelte-a6ada9 button:where(.svelte-a6ada9){grid-column:2}.notify.svelte-a6ada9{align-items:flex-start;flex-direction:column}.notify.svelte-a6ada9>input:where(.svelte-a6ada9){width:100%;min-width:0}.dialog.svelte-a6ada9 footer:where(.svelte-a6ada9) .footer-error:where(.svelte-a6ada9){order:10;flex:1 1 100%}}
  .calendar-search.svelte-a6ada9{box-sizing:border-box;width:100%;margin:0 0 10px;border:1px solid #ccd3dd;border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;background:#fff}
  .calendar-search.svelte-a6ada9:focus{outline:2px solid #9db5ee;outline-offset:1px;border-color:#3657a7}
  .no-calendars.svelte-a6ada9{color:#697386;font-size:13px}
  .day-create-target.svelte-a6ada9{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:pointer}
  .day-create-target.svelte-a6ada9:focus-visible{outline:2px solid #3657a7;outline-offset:-3px}
  .day-number.svelte-a6ada9{position:relative;z-index:1;display:inline-grid;place-items:center;pointer-events:none}
  .event.svelte-a6ada9{position:relative;z-index:1}
  .event.svelte-a6ada9:hover,.event.svelte-a6ada9:focus-visible{background:color-mix(in srgb,var(--event) 45%,white);box-shadow:0 3px 9px #203f8a40}
  .event.svelte-a6ada9:active{background:color-mix(in srgb,var(--event) 72%,white);box-shadow:inset 0 2px 4px #17203355}
  .availability.svelte-a6ada9{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:9px 0 13px;padding:9px 11px;border-radius:8px;background:#fff7e8;color:#704600;font-size:13px}
  .busy-times.svelte-a6ada9{display:flex;gap:6px;flex-wrap:wrap}
  .busy-times.svelte-a6ada9 span:where(.svelte-a6ada9){padding:3px 7px;border-radius:999px;background:#ffe4b5;font-weight:700}


  .review.svelte-1qld58c { max-width: 1100px; margin: 0 auto; padding: 24px; color: #292929; font-family: Arial, sans-serif; }
  h1.svelte-1qld58c { font-size: 28px; margin: 0 0 12px; } p.svelte-1qld58c { line-height: 1.5; }
  header.svelte-1qld58c, .month-controls.svelte-1qld58c, .preview-toolbar.svelte-1qld58c, .email-actions.svelte-1qld58c, .footer-actions.svelte-1qld58c, .counts.svelte-1qld58c { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
  header.svelte-1qld58c { justify-content: space-between; margin-bottom: 24px; }
  label.svelte-1qld58c { display: flex; flex-direction: column; gap: 8px; }
  button.svelte-1qld58c, input.svelte-1qld58c, textarea.svelte-1qld58c { font: inherit; padding: 12px 16px; border: 1px solid #bfb7aa; border-radius: 8px; background: #fff; color: #292929; }
  button.svelte-1qld58c { cursor: pointer; min-height: 44px; } button.svelte-1qld58c:hover:not(:disabled) { background: #fff4e4; } button.svelte-1qld58c:disabled { opacity: .5; cursor: not-allowed; }
  button.svelte-1qld58c:focus-visible, input.svelte-1qld58c:focus-visible, textarea.svelte-1qld58c:focus-visible { outline: 3px solid #a85800; outline-offset: 3px; }
  .primary.svelte-1qld58c { background: #fab45a; border-color: #e99c34; font-weight: bold; }
  .batch-info.svelte-1qld58c, .email-card.svelte-1qld58c, .sending-details.svelte-1qld58c { background: #fff; border: 1px solid #eadac4; border-top: 4px solid #fab45a; border-radius: 12px; padding: 20px; margin-bottom: 20px; }
  .batch-info.svelte-1qld58c { background: #fff8ee; } .counts.svelte-1qld58c span:where(.svelte-1qld58c) { background: #fff; padding: 8px 12px; border-radius: 8px; }
  .preview-controls.svelte-1qld58c { position: sticky; top: 12px; z-index: 10; background: #fff8ee; border: 1px solid #eadac4; border-radius: 10px; padding: 12px; margin-bottom: 16px; box-shadow: 0 4px 12px #29292912; }
  .preview-toolbar.svelte-1qld58c { justify-content: space-between; } dl.svelte-1qld58c { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 10px; } dt.svelte-1qld58c { font-weight: bold; } dd.svelte-1qld58c { margin: 0; overflow-wrap: anywhere; }
  iframe.svelte-1qld58c { display: block; box-sizing: border-box; width: 100%; height: 720px; border: 1px solid #eadac4; background: #fff; border-radius: 8px; }
  pre.svelte-1qld58c { white-space: pre-wrap; overflow-wrap: anywhere; padding: 16px; background: #fff8ee; }
  .error.svelte-1qld58c { background: #ffe9e9; color: #7f1616; padding: 12px; border-radius: 8px; margin: 12px 0; }
  .hold-reason.svelte-1qld58c { background: #fff0d8; padding: 12px; border-left: 4px solid #a85800; }
  footer.svelte-1qld58c { padding: 16px 0 32px; } .modal-backdrop.svelte-1qld58c { position: fixed; inset: 0; background: #0008; display: flex; justify-content: center; align-items: center; z-index: 10000; padding: 20px; }
  .modal.svelte-1qld58c { background: white; border-top: 5px solid #fab45a; border-radius: 12px; padding: 24px; max-width: 560px; max-height: 90vh; overflow-y: auto; width: 100%; } textarea.svelte-1qld58c { min-height: 100px; }
  @media (max-width: 600px) { .review.svelte-1qld58c { padding: 12px; } .email-card.svelte-1qld58c, .sending-details.svelte-1qld58c, .batch-info.svelte-1qld58c { padding: 12px; } .preview-controls.svelte-1qld58c { top: 8px; padding: 8px; } h1.svelte-1qld58c { font-size: 24px; } .preview-toolbar.svelte-1qld58c { gap: 6px; } .preview-toolbar.svelte-1qld58c button:where(.svelte-1qld58c) { padding: 10px; } .modal.svelte-1qld58c { padding: 16px; } }


	.sidebar.svelte-12woz43 {
		width: 256px;
		background-color: white;
		border-right: 1px solid #e5e7eb;
		display: flex;
		flex-direction: column;
	}

	.sidebar-header.svelte-12woz43 {
		padding: 24px;
		border-bottom: 1px solid #e5e7eb;
	}

	.sidebar-header.svelte-12woz43 h1:where(.svelte-12woz43) {
		margin: 0;
		color: #111827;
		font-size: 18px;
		font-weight: 600;
	}

	.sidebar-nav.svelte-12woz43 {
		flex: 1;
		padding: 16px;
	}

	.nav-list.svelte-12woz43 {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 8px;
	}

	.nav-button.svelte-12woz43 {
		width: 100%;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 12px 16px;
		border-radius: 8px;
		border: none;
		background: transparent;
		color: #374151;
		cursor: pointer;
		transition: all 0.2s ease;
		font-size: 14px;
		font-family: inherit;
	}

	.nav-button.svelte-12woz43:hover:not(.active) {
		background-color: #f9fafb;
	}

	.nav-button.active.svelte-12woz43 {
		background-color: #fff7ed;
		color: #fab45a;
	}

	.nav-icon.svelte-12woz43 {
		flex-shrink: 0;
	}

	/* Responsive Design */
	@media (max-width: 768px) {
		.sidebar.svelte-12woz43 {
			width: 100%;
			border-right: none;
			border-bottom: 1px solid #e5e7eb;
		}

		.sidebar-nav.svelte-12woz43 {
			padding: 8px;
		}

		.nav-list.svelte-12woz43 {
			flex-direction: row;
			overflow-x: auto;
			gap: 4px;
		}

		.nav-button.svelte-12woz43 {
			white-space: nowrap;
			padding: 8px 12px;
		}
	}


	.app-container.svelte-1xsedi1 {
		display: flex;
		height: 100vh;
		background-color: #f9fafb;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100vw;
		z-index: 1000;
	}

	/* Main Content Styles */
	.main-content.svelte-1xsedi1 {
		flex: 1;
		overflow: auto;
	}

	.home-container.svelte-1xsedi1 {
		max-width: 1280px;
		margin: 0 auto;
		padding: 48px 32px;
	}

	/* Hero Section */
	.hero-section.svelte-1xsedi1 {
		text-align: center;
		margin-bottom: 64px;
	}

	.hero-title.svelte-1xsedi1 {
		color: #111827;
		font-size: 32px;
		font-weight: 700;
		margin: 0 0 16px 0;
	}

	.hero-description.svelte-1xsedi1 {
		color: #4b5563;
		max-width: 672px;
		margin: 0 auto 32px;
		font-size: 16px;
		line-height: 1.5;
	}

	.search-container.svelte-1xsedi1 {
		max-width: 576px;
		margin: 0 auto;
		position: relative;
	}

	.search-icon.svelte-1xsedi1 {
		position: absolute;
		left: 16px;
		top: 50%;
		transform: translateY(-50%);
		color: #9ca3af;
		pointer-events: none;
	}

	.search-input.svelte-1xsedi1 {
		width: 100%;
		padding: 12px 16px 12px 48px;
		height: 48px;
		border: 1px solid #d1d5db;
		border-radius: 8px;
		font-size: 14px;
		font-family: inherit;
		background-color: white;
		box-sizing: border-box;
	}

	.search-input.svelte-1xsedi1:focus {
		outline: none;
		border-color: #fab45a;
		box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
	}

	/* Stats Grid */
	.stats-grid.svelte-1xsedi1 {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
		gap: 24px;
		margin-bottom: 64px;
	}

	.stat-card.svelte-1xsedi1 {
		background-color: white;
		border-radius: 8px;
		padding: 24px;
		border: 1px solid #e5e7eb;
	}

	.stat-content.svelte-1xsedi1 {
		display: flex;
		align-items: center;
		gap: 16px;
	}

	.stat-icon-wrapper.svelte-1xsedi1 {
		width: 48px;
		height: 48px;
		border-radius: 8px;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #fff7ed;
	}

	.stat-icon.svelte-1xsedi1 {
		color: #fab45a;
	}

	.stat-info.svelte-1xsedi1 {
		flex: 1;
	}

	.stat-label.svelte-1xsedi1 {
		color: #4b5563;
		font-size: 14px;
		margin-bottom: 4px;
	}

	.stat-value.svelte-1xsedi1 {
		color: #111827;
		font-size: 20px;
		font-weight: 600;
	}

	/* Quick Actions */
	.quick-actions.svelte-1xsedi1 {
		background-color: white;
		border-radius: 8px;
		padding: 32px;
		border: 1px solid #e5e7eb;
	}

	.quick-actions-title.svelte-1xsedi1 {
		color: #111827;
		font-size: 20px;
		font-weight: 600;
		margin: 0 0 24px 0;
	}

	.quick-actions-grid.svelte-1xsedi1 {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
		gap: 16px;
	}

	.action-button.svelte-1xsedi1 {
		height: auto;
		padding: 16px;
		text-align: left;
		border: 1px solid #e5e7eb;
		border-radius: 8px;
		background-color: white;
		cursor: pointer;
		transition: all 0.2s ease;
		font-family: inherit;
	}

	.action-button.svelte-1xsedi1:hover {
		border-color: #fab45a;
		background-color: #fff7ed;
	}

	.action-content.svelte-1xsedi1 {
		text-align: left;
	}

	.action-title.svelte-1xsedi1 {
		color: #111827;
		font-size: 16px;
		font-weight: 500;
		margin-bottom: 4px;
	}

	.action-description.svelte-1xsedi1 {
		color: #4b5563;
		font-size: 14px;
	}

	/* Responsive Design */
	@media (max-width: 768px) {
		.app-container.svelte-1xsedi1 {
			flex-direction: column;
		}

		.home-container.svelte-1xsedi1 {
			padding: 24px 16px;
		}

		.hero-title.svelte-1xsedi1 {
			font-size: 24px;
		}

		.stats-grid.svelte-1xsedi1 {
			grid-template-columns: 1fr;
		}

		.quick-actions-grid.svelte-1xsedi1 {
			grid-template-columns: 1fr;
		}
	}


    .app-container.svelte-1iitliw {
        display: flex;
        height: 100vh;
        background-color: #f9fafb;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100vw;
        z-index: 1000;
    }

    /* Main Content Styles */
    .main-content.svelte-1iitliw {
        flex: 1;
        overflow: auto;
    }

    .upload-exercise-container.svelte-1iitliw {
        max-width: 800px;
        margin: 0 auto;
        padding: 32px 24px;
        background-color: #f9fafb;
        min-height: 100vh;
    }

    .form-section.svelte-1iitliw {
        background-color: white;
        border-radius: 8px;
        padding: 32px;
        border: 1px solid #e5e7eb;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    }

    .section-title.svelte-1iitliw {
        color: #111827;
        font-size: 24px;
        font-weight: 700;
        margin: 0 0 8px 0;
    }

    .section-description.svelte-1iitliw {
        color: #4b5563;
        font-size: 14px;
        margin: 0 0 24px 0;
        line-height: 1.5;
    }

    .form-field.svelte-1iitliw {
        display: flex;
        flex-direction: column;
        margin-bottom: 20px;
        width: 100%;
    }

    .form-field.svelte-1iitliw label:where(.svelte-1iitliw) {
        margin-bottom: 8px;
        font-size: 1.17em;
        font-weight: bold;
        color: #111827;
    }

    .form-input.svelte-1iitliw {
        width: 100%;
        padding: 12px 16px;
        height: 48px;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        font-size: 14px;
        font-family: inherit;
        background-color: #eeebdb;
        box-sizing: border-box;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    }

    .form-input.svelte-1iitliw:focus {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    .form-textarea.svelte-1iitliw {
        width: 100%;
        padding: 12px 16px;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        font-size: 14px;
        font-family: inherit;
        background-color: #eeebdb;
        resize: vertical;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
    }

    .form-textarea.svelte-1iitliw:focus {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    .details-section.svelte-1iitliw {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid #e5e7eb;
    }

    .details-title.svelte-1iitliw {
        color: #111827;
        font-size: 18px;
        font-weight: 600;
        margin: 0 0 16px 0;
    }

    .form-section.svelte-1iitliw + .form-section:where(.svelte-1iitliw) {
        margin-top: 32px;
    }

    .field-hint.svelte-1iitliw {
        color: #6b7280;
        font-size: 12px;
        margin-top: 4px;
        display: block;
    }

    .checkbox-field.svelte-1iitliw {
        margin-bottom: 16px;
    }

    .checkbox-label.svelte-1iitliw {
        display: flex;
        align-items: center;
        gap: 8px;
        cursor: pointer;
        font-weight: normal;
    }

    .checkbox-label.svelte-1iitliw input[type="checkbox"]:where(.svelte-1iitliw) {
        width: 18px;
        height: 18px;
        cursor: pointer;
    }

    .type-specific-section.svelte-1iitliw {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid #e5e7eb;
    }

    .options-section.svelte-1iitliw {
        margin-top: 16px;
    }

    .options-header.svelte-1iitliw {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 16px;
    }

    .section-label.svelte-1iitliw {
        font-size: 1.17em;
        font-weight: bold;
        color: #111827;
        margin: 0;
    }

    .add-button.svelte-1iitliw {
        padding: 8px 16px;
        background-color: #fab45a;
        color: #111827;
        border: 1px solid #d1d5db;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }

    .add-button.svelte-1iitliw:hover {
        background-color: #c98f43;
    }

    .option-item.svelte-1iitliw {
        display: flex;
        gap: 12px;
        align-items: flex-start;
        margin-bottom: 12px;
    }

    .option-input.svelte-1iitliw {
        flex: 1;
    }

    .correct-button.svelte-1iitliw {
        padding: 12px 16px;
        background-color: white;
        color: #111827;
        border: 1px solid #d1d5db;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.2s ease;
        white-space: nowrap;
    }

    .correct-button.svelte-1iitliw:hover {
        background-color: #f3f4f6;
    }

    .correct-button.active.svelte-1iitliw {
        background-color: #10b981;
        color: white;
        border-color: #10b981;
    }

    .remove-button.svelte-1iitliw {
        padding: 12px 16px;
        background-color: #ef4444;
        color: white;
        border: 1px solid #ef4444;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
        transition: background-color 0.2s ease;
        white-space: nowrap;
    }

    .remove-button.svelte-1iitliw:hover {
        background-color: #dc2626;
    }

    .blank-item.svelte-1iitliw,
    .matching-item.svelte-1iitliw {
        padding: 16px;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        margin-bottom: 16px;
        background-color: #f9fafb;
    }

    .matching-pair.svelte-1iitliw {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        margin-bottom: 12px;
    }

    .radio-group.svelte-1iitliw {
        display: flex;
        gap: 24px;
        margin-top: 8px;
    }

    .radio-label.svelte-1iitliw {
        display: flex;
        align-items: center;
        gap: 8px;
        cursor: pointer;
        font-weight: normal;
    }

    .radio-label.svelte-1iitliw input[type="radio"]:where(.svelte-1iitliw) {
        width: 18px;
        height: 18px;
        cursor: pointer;
    }

    .images-section.svelte-1iitliw {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid #e5e7eb;
    }

    .file-input.svelte-1iitliw {
        width: 100%;
        padding: 12px 16px;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        font-size: 14px;
        font-family: inherit;
        background-color: #eeebdb;
        box-sizing: border-box;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        cursor: pointer;
    }

    .file-input.svelte-1iitliw:focus {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    .images-grid.svelte-1iitliw {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 16px;
        margin-top: 16px;
    }

    .image-preview-item.svelte-1iitliw {
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 12px;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        background-color: white;
    }

    .image-preview.svelte-1iitliw {
        width: 100%;
        height: 200px;
        object-fit: contain;
        background-color: #f9fafb;
        border-radius: 4px;
    }

    .caption-input.svelte-1iitliw {
        margin-top: 8px;
    }

    .submit-section.svelte-1iitliw {
        margin-top: 32px;
        padding-top: 24px;
        border-top: 1px solid #e5e7eb;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .submit-button.svelte-1iitliw {
        padding: 14px 32px;
        background-color: #fab45a;
        color: #111827;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: background-color 0.2s ease;
        align-self: flex-start;
    }

    .submit-button.svelte-1iitliw:hover:not(:disabled) {
        background-color: #c98f43;
    }

    .submit-button.svelte-1iitliw:disabled {
        background-color: #d1d5db;
        color: #6b7280;
        cursor: not-allowed;
    }

    .error-message.svelte-1iitliw {
        padding: 12px 16px;
        background-color: #fee2e2;
        color: #dc2626;
        border: 1px solid #fca5a5;
        border-radius: 6px;
        font-size: 14px;
    }

    .success-message.svelte-1iitliw {
        padding: 12px 16px;
        background-color: #d1fae5;
        color: #065f46;
        border: 1px solid #6ee7b7;
        border-radius: 6px;
        font-size: 14px;
    }

    /* Insert Math Button */
    .insert-math-button.svelte-1iitliw {
        width: 100%;
        padding: 14px 20px;
        margin-bottom: 12px;
        background-color: #fab45a;
        color: #111827;
        border: 2px solid #fab45a;
        border-radius: 8px;
        font-size: 15px;
        font-weight: 600;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        transition: all 0.2s ease;
        box-shadow: 0px 2px 4px rgba(250, 180, 90, 0.3);
    }

    .insert-math-button.svelte-1iitliw:hover {
        background-color: #c98f43;
        border-color: #c98f43;
        transform: translateY(-1px);
        box-shadow: 0px 4px 6px rgba(250, 180, 90, 0.4);
    }

    .button-icon.svelte-1iitliw {
        font-size: 20px;
        font-weight: bold;
    }

    .button-text.svelte-1iitliw {
        font-size: 15px;
    }

    /* Preview Section */
    .preview-section.svelte-1iitliw {
        margin-top: 16px;
        padding: 16px;
        background-color: #f9fafb;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
    }

    .preview-label.svelte-1iitliw {
        font-size: 14px;
        font-weight: 600;
        color: #6b7280;
        margin-bottom: 8px;
        display: block;
    }

    .preview-content.svelte-1iitliw {
        font-size: 14px;
        line-height: 1.6;
        color: #111827;
        min-height: 24px;
    }

    .math-preview.svelte-1iitliw {
        display: inline-block;
        margin: 0 2px;
    }

    /* Math Modal Dialog Styles */
    .math-modal-backdrop.svelte-1iitliw {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 1000;
        animation: svelte-1iitliw-fadeIn 0.2s ease;
    }

    .math-modal.svelte-1iitliw {
        position: fixed;
        top: 10%;
        left: 50%;
        transform: translateX(-50%);
        width: 90%;
        max-width: 600px;
        max-height: 50vh;
        background-color: white;
        border-radius: 12px;
        box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        z-index: 1001;
        display: flex;
        flex-direction: column;
        animation: svelte-1iitliw-modalFadeIn 0.3s ease;
        overflow: hidden;
    }

    /* Ensure MathLive virtual keyboard appears above modal and is positioned at bottom */
    /* Use the highest possible z-index and ensure it's in the right stacking context */
    math-virtual-keyboard {
        z-index: 2147483647 !important; /* Maximum z-index value */
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        max-height: 45vh !important;
        background-color: #2d2d2d !important;
        pointer-events: auto !important;
    }

    /* Also target any wrapper elements MathLive might use */
    math-field math-virtual-keyboard,
    math-field::part(virtual-keyboard) {
        z-index: 2147483647 !important;
    }

    /* Ensure modal doesn't create a new stacking context that traps keyboard */
    .math-modal.svelte-1iitliw {
        isolation: auto;
    }

    /* Prevent clicks inside modal from bubbling to backdrop */
    .math-modal.svelte-1iitliw :where(.svelte-1iitliw) {
        pointer-events: auto;
    }

    @keyframes svelte-1iitliw-modalFadeIn {
        from {
            opacity: 0;
            transform: translateX(-50%) translateY(-10px);
        }
        to {
            opacity: 1;
            transform: translateX(-50%) translateY(0);
        }
    }

    @keyframes svelte-1iitliw-fadeIn {
        from {
            opacity: 0;
        }
        to {
            opacity: 1;
        }
    }

    .math-modal-header.svelte-1iitliw {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px 24px;
        border-bottom: 1px solid #e5e7eb;
        flex-shrink: 0;
    }

    .math-modal-title.svelte-1iitliw {
        margin: 0;
        font-size: 20px;
        font-weight: 600;
        color: #111827;
    }

    .math-modal-close.svelte-1iitliw {
        background: none;
        border: none;
        font-size: 28px;
        color: #6b7280;
        cursor: pointer;
        padding: 0;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
        transition: all 0.2s ease;
    }

    .math-modal-close.svelte-1iitliw:hover {
        background-color: #f3f4f6;
        color: #111827;
    }

    .math-modal-body.svelte-1iitliw {
        flex: 1;
        padding: 24px;
        overflow-y: auto;
        min-height: 200px;
    }

    .math-modal-editor.svelte-1iitliw {
        width: 100%;
    }

    .math-modal-editor.svelte-1iitliw math-field:where(.svelte-1iitliw) {
        width: 100%;
        min-height: 200px;
        padding: 12px 16px;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        font-size: 14px;
        background-color: #eeebdb;
        box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
        display: block;
        box-sizing: border-box;
    }

    .math-modal-editor.svelte-1iitliw math-field:where(.svelte-1iitliw):focus-within {
        outline: none;
        border-color: #fab45a;
        box-shadow: 0 0 0 3px rgba(250, 180, 90, 0.1);
    }

    /* Hide the virtual keyboard toggle button since keyboard opens automatically */
    .math-modal-editor.svelte-1iitliw math-field:where(.svelte-1iitliw)::part(virtual-keyboard-toggle) {
        display: none !important;
    }

    .math-modal-footer.svelte-1iitliw {
        display: flex;
        gap: 12px;
        padding: 16px 24px;
        border-top: 1px solid #e5e7eb;
        flex-shrink: 0;
    }

    .math-modal-cancel.svelte-1iitliw,
    .math-modal-insert.svelte-1iitliw {
        flex: 1;
        padding: 12px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    .math-modal-cancel.svelte-1iitliw {
        background-color: white;
        color: #6b7280;
        border: 1px solid #d1d5db;
    }

    .math-modal-cancel.svelte-1iitliw:hover {
        background-color: #f9fafb;
        border-color: #9ca3af;
    }

    .math-modal-insert.svelte-1iitliw {
        background-color: #fab45a;
        color: #111827;
        border: 1px solid #fab45a;
    }

    .math-modal-insert.svelte-1iitliw:hover {
        background-color: #c98f43;
        border-color: #c98f43;
    }

    /* Responsive Design */
    @media (max-width: 768px) {
        .app-container.svelte-1iitliw {
            flex-direction: column;
        }

        .upload-exercise-container.svelte-1iitliw {
            padding: 16px;
        }

        .form-section.svelte-1iitliw {
            padding: 24px 16px;
        }

        .section-title.svelte-1iitliw {
            font-size: 20px;
        }

        .matching-pair.svelte-1iitliw {
            grid-template-columns: 1fr;
        }

        .images-grid.svelte-1iitliw {
            grid-template-columns: 1fr;
        }

        .option-item.svelte-1iitliw {
            flex-direction: column;
        }

        .correct-button.svelte-1iitliw,
        .remove-button.svelte-1iitliw {
            width: 100%;
        }

        .math-modal.svelte-1iitliw {
            width: 95%;
            max-height: 90vh;
        }

        .math-modal-body.svelte-1iitliw {
            padding: 16px;
        }

        .math-modal-editor.svelte-1iitliw math-field:where(.svelte-1iitliw) {
            min-height: 150px;
        }

        .math-modal-footer.svelte-1iitliw {
            padding: 12px 16px;
        }
    }


	.exercises-container.svelte-5t7ryq {
		width: 100%;
		padding: 24px;
	}

	.loading.svelte-5t7ryq,
	.error.svelte-5t7ryq,
	.empty.svelte-5t7ryq {
		text-align: center;
		padding: 48px;
		color: #4b5563;
		font-size: 16px;
	}

	.error.svelte-5t7ryq {
		color: #ef4444;
	}

	.exercises-list.svelte-5t7ryq {
		display: flex;
		flex-direction: column;
		gap: 32px;
		max-width: 800px;
		margin: 0 auto;
	}

	.exercise-card.svelte-5t7ryq {
		background-color: white;
		border-radius: 12px;
		padding: 24px;
		box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
	}

	.exercise-header.svelte-5t7ryq {
		margin-bottom: 16px;
	}

	.difficulty-badge.svelte-5t7ryq {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 6px 12px;
		border-radius: 6px;
		font-size: 14px;
		font-weight: 500;
	}

	.difficulty-text.svelte-5t7ryq {
		color: #111827;
	}

	.star-icon.svelte-5t7ryq,
	.bookmark-icon.svelte-5t7ryq {
		color: #9ca3af;
		width: 16px;
		height: 16px;
		flex-shrink: 0;
	}

	.question-text.svelte-5t7ryq {
		color: #1e3a8a;
		font-size: 16px;
		line-height: 1.6;
		margin-bottom: 24px;
		font-weight: 500;
	}

	.question-text.svelte-5t7ryq .katex {
		font-size: 1em;
	}

	.options-container.svelte-5t7ryq {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.option-button.svelte-5t7ryq {
		display: flex;
		align-items: flex-start;
		gap: 12px;
		padding: 12px 16px;
		background-color: #e0f2fe;
		border: 2px solid transparent;
		border-radius: 8px;
		cursor: pointer;
		transition: all 0.2s ease;
		text-align: left;
		font-family: inherit;
		width: 100%;
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
	}

	.option-button.svelte-5t7ryq:hover:not(.correct):not(.incorrect) {
		background-color: #bae6fd;
		transform: translateY(-1px);
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	}

	.option-button.svelte-5t7ryq:active:not(.correct):not(.incorrect) {
		transform: translateY(0);
	}

	/* Correct answer styling */
	.option-button.correct.svelte-5t7ryq {
		background-color: #d1fae5;
		border-color: #10b981;
		box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
	}

	.option-button.correct.svelte-5t7ryq .option-label:where(.svelte-5t7ryq) {
		color: #10b981;
		font-weight: 700;
	}

	.option-button.correct.svelte-5t7ryq .option-text:where(.svelte-5t7ryq) {
		color: #065f46;
		font-weight: 500;
	}

	/* Incorrect answer styling */
	.option-button.incorrect.svelte-5t7ryq {
		background-color: #fee2e2;
		border-color: #ef4444;
		box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3);
	}

	.option-button.incorrect.svelte-5t7ryq .option-label:where(.svelte-5t7ryq) {
		color: #ef4444;
		font-weight: 700;
	}

	.option-button.incorrect.svelte-5t7ryq .option-text:where(.svelte-5t7ryq) {
		color: #991b1b;
		font-weight: 500;
	}

	.option-label.svelte-5t7ryq {
		font-weight: 600;
		color: #1e40af;
		flex-shrink: 0;
		min-width: 24px;
	}

	.option-text.svelte-5t7ryq {
		color: #111827;
		font-size: 15px;
		line-height: 1.5;
		flex: 1;
	}

	.option-text.svelte-5t7ryq .katex {
		font-size: 1em;
	}

	/* Responsive Design */
	@media (max-width: 768px) {
		.exercises-container.svelte-5t7ryq {
			padding: 16px;
		}

		.exercise-card.svelte-5t7ryq {
			padding: 20px;
		}

		.question-text.svelte-5t7ryq {
			font-size: 15px;
		}

		.option-text.svelte-5t7ryq {
			font-size: 14px;
		}
	}


	.app-container.svelte-1gzttt4 {
		display: flex;
		height: 100vh;
		background-color: #f9fafb;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100vw;
		z-index: 1000;
	}

	/* Main Content Styles */
	.main-content.svelte-1gzttt4 {
		flex: 1;
		overflow: auto;
	}

	.page-container.svelte-1gzttt4 {
		max-width: 1280px;
		margin: 0 auto;
		padding: 48px 32px;
	}

	/* Responsive Design */
	@media (max-width: 768px) {
		.app-container.svelte-1gzttt4 {
			flex-direction: column;
		}

		.page-container.svelte-1gzttt4 {
			padding: 24px 16px;
		}
	}


  .bendra-informacija.svelte-n7w833 {
    padding: 0 1rem 1rem 1rem;
    max-width: 600px;
    margin: 0 auto;
  }

  .message.svelte-n7w833 {
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 16px;
    font-weight: 500;
  }

  .message.error.svelte-n7w833 {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
  }

  .loading.svelte-n7w833,
  .empty.svelte-n7w833 {
    text-align: center;
    padding: 40px 16px;
    color: #666;
    font-size: 16px;
  }

  .sections-list.svelte-n7w833 {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .section-card.svelte-n7w833 {
    background: white;
    border: 2px solid #e0e0e0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0px 0px 1px rgba(40, 41, 61, 0.08), 0px 0.5px 2px rgba(96, 97, 112, 0.16);
  }

  .section-card.svelte-n7w833:hover {
    border-color: #fab45a;
  }

  .section-card.expanded.svelte-n7w833 {
    border-color: #fab45a;
  }

  .section-header.svelte-n7w833 {
    width: 100%;
    background: transparent;
    border: none;
    padding: 16px 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    text-align: left;
  }

  .section-header.svelte-n7w833:focus {
    outline: 2px solid #14695b;
    outline-offset: 2px;
  }

  .section-topic.svelte-n7w833 {
    font-size: 18px;
    font-weight: 600;
    color: #333;
  }

  .chevron.svelte-n7w833 {
    color: #666;
    transition: transform 0.2s ease;
    flex-shrink: 0;
  }

  .chevron.expanded.svelte-n7w833 {
    transform: rotate(180deg);
  }

  .section-content.svelte-n7w833 {
    border-top: 1px solid #e0e0e0;
    padding: 0 18px 18px 18px;
  }

  .content-wrapper.svelte-n7w833 {
    padding-top: 16px;
    line-height: 1.6;
    color: #333;
  }

  /* Style HTML content similarly to admin view (TinyMCE output) */
  .content-wrapper.svelte-n7w833 p {
    margin-bottom: 1em;
  }

  .content-wrapper.svelte-n7w833 ul,
  .content-wrapper.svelte-n7w833 ol {
    margin-bottom: 1em;
    padding-left: 2em;
  }

  .content-wrapper.svelte-n7w833 img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1em 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .content-wrapper.svelte-n7w833 a {
    color: #007bff;
    text-decoration: none;
  }

  .content-wrapper.svelte-n7w833 a:hover {
    text-decoration: underline;
  }



  .wrap.svelte-1y9sdib {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
  }
  .card.svelte-1y9sdib {
    width: min(520px, 100%);
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    background: white;
  }
  h1.svelte-1y9sdib {
    margin: 0 0 0.5rem 0;
    font-size: 1.1rem;
  }
  p.svelte-1y9sdib {
    margin: 0;
    color: #4b5563;
  }


	@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap');

	body {
		font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
		}
	.background.svelte-1n46o8q {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  z-index: -1;
	  background-color: #fffffa;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	}
	main.svelte-1n46o8q {
	  padding: 1rem;
	  max-width: 600px;
	  margin: 0 auto;
	}

	/* Full screen for exercise bank page */
	main > :global(.app-container) {
	  max-width: none;
	  margin: 0;
	  padding: 0;
	}

	main:has(> .app-container) {
	  padding: 0;
	  max-width: none;
	  margin: 0;
	}
