/* /Areas/Portal/Views/Shared/_Layout.cshtml.rz.scp.css */
/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */


a[b-lr1t5u5q67] {
  color: #0077cc;
}

.btn-primary[b-lr1t5u5q67] {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.nav-pills .nav-link.active[b-lr1t5u5q67], .nav-pills .show > .nav-link[b-lr1t5u5q67] {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.border-top[b-lr1t5u5q67] {
  border-top: 1px solid #e5e5e5;
}
.border-bottom[b-lr1t5u5q67] {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow[b-lr1t5u5q67] {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy[b-lr1t5u5q67] {
  font-size: 1rem;
  line-height: inherit;
}

.footer[b-lr1t5u5q67] {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;
}
/* /Components/SignInComponent.razor.rz.scp.css */
/* Match Home page container */
.panel-wrap[b-tzbd025q8x] {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding: 45px 24px 16px;
  box-sizing: border-box;
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Same card width & grid as Home */
.panel-card[b-tzbd025q8x] {
  width: clamp(800px, 82vw, 1240px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 30px;
  row-gap: 40px;
  align-content: center;
}

/* H1 — EXACTLY the same as your component */
.panel-title[b-tzbd025q8x] {
  grid-column: 1 / -1;
  width: 100%;
  text-align: center;
  margin: 0 0 8px 0;
  line-height: 1.25;
  font-weight: 600;
  color: #374151;
  font-size: clamp(22px, 2.2vw, 32px);
}

/* Search spans full card width and centers its field */
.search-section[b-tzbd025q8x] {
  grid-column: 1 / -1;
  display: grid;
  justify-items: center;
}

.search-wrapper[b-tzbd025q8x] {
  position: relative;
  width: 100%;
  max-width: 800px; /* roomy on tablet, adjust if needed */
}

.search-icon[b-tzbd025q8x] {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  color: #6b7280;
  pointer-events: none;
}

.search-input[b-tzbd025q8x] {
  width: 100%;
  height: 64px;
  padding: 0 20px 0 60px;
  border: 2px solid #e5e7eb;
  border-radius: 16px;           /* matches button radius family */
  font-size: 1.1rem;
  font-weight: 500;
  background: #fff;
  box-sizing: border-box;
  outline: none;
}
.search-input:focus[b-tzbd025q8x] { border-color: #3D98B6; }
.search-input[b-tzbd025q8x]::placeholder { color: #9ca3af; font-weight: 400; }

/* Actions row (reuse Home grid) */
.panel-actions[b-tzbd025q8x] {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 30px;
}

/* Button styles – reuse Home sizing */
.btn-action[b-tzbd025q8x] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 150px;
  padding: 24px 32px;
  border-radius: 20px;
  border: 1px solid transparent;
  font-weight: 600;
  font-size: 2rem;
  line-height: 1;
  text-decoration: none;
  color: #fff;
  -webkit-tap-highlight-color: transparent;
}

/* Single button centered under the search */
.signout-btn[b-tzbd025q8x] {
  grid-column: 1 / -1;       /* span both columns */
  justify-self: center;      /* center as a single button */
  width: clamp(300px, 30vw, 520px);
}

/* Brand colors (match Home) */
.is-primary[b-tzbd025q8x] { background: #3D98B6; color: #fff; border-color: #3D98B6; }
.is-accent[b-tzbd025q8x]  { background: #EDAA25; color: #fff; border-color: #EDAA25; }
/* /Components/SuccessComponent.razor.rz.scp.css */
.success-wrap[b-isbprmvmb7] {
    min-height: 55vh; 
    display: flex;
    justify-content: center; 
    align-items: flex-start; 
    padding: 8vh 24px 0; 
    box-sizing: border-box;
}

/* Centered text block */
.success-card[b-isbprmvmb7] {
    width: min(900px, 88vw);
    margin: 0 auto;
    text-align: center;
}

.success-line[b-isbprmvmb7] {
    margin: 0 0 14px 0;
    font-weight: 600;
    line-height: 1.3;
    color: #374151;
    font-size: clamp(26px, 2.8vw, 40px); 
}

.success-sub[b-isbprmvmb7] {
    margin: 0;
    line-height: 1.5;
    color: #4b5563;
    font-size: clamp(20px, 2.0vw, 28px); 
}
/* /Pages/NewVisitor.razor.rz.scp.css */
/* Container */
.panel-wrap[b-7nifffifom] {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 45px 24px 16px;
    box-sizing: border-box;
}

/* Card */
.panel-card[b-7nifffifom] {
    --control-width: clamp(560px, 90%, 1100px);
    --control-height: 60px;
    width: clamp(800px, 82vw, 1240px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    row-gap: 16px;
    align-content: center;
}

/* Track for grid + button */
.control-track[b-7nifffifom] {
    grid-column: 1 / -1;
    display: grid;
    justify-items: center;
    row-gap: 18px;
    margin-top: 4px; 
}

/* 2x2 grid + one full-width row */
.form-grid[b-7nifffifom] {
    width: var(--control-width);
    max-width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 20px;
}

/* Full-width row spans both columns */
.full-span[b-7nifffifom] {
    grid-column: 1 / -1;
}

/* Inputs (same height as button) */
.input-field[b-7nifffifom] {
    width: 100%;
    height: var(--control-height);
    padding: 0 20px;
    border: 2px solid #e5e7eb;
    border-radius: 20px;
    font-size: 1.3rem;
    font-weight: 500;
    background: #fff;
    box-sizing: border-box;
    outline: none;
}

    .input-field:focus[b-7nifffifom] {
        border-color: #3D98B6;
    }

    .input-field[b-7nifffifom]::placeholder {
        color: #9ca3af;
        font-weight: 400;
    }

/* Button — EXACT same height & width as inputs */
.confirm-btn[b-7nifffifom] {
    width: var(--control-width);
    max-width: 100%;
    height: var(--control-height);
    justify-self: center;
}

/* Button base */
.btn-action[b-7nifffifom] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 28px; /* horizontal only */
    border-radius: 20px;
    border: 1px solid transparent;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    text-decoration: none;
    color: #fff;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

/* Yellow variant */
.is-accent[b-7nifffifom] {
    background: #EDAA25;
    border-color: #EDAA25;
    color: #fff;
}
/* Required field validation */
.input-field.field-error[b-7nifffifom] {
    border-color: #ef4444;
    animation: shake-b-7nifffifom 0.4s ease-in-out;
}

@keyframes shake-b-7nifffifom {
    0%, 100% {
        transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-8px);
    }

    20%, 40%, 60%, 80% {
        transform: translateX(8px);
    }
}

/* Optional: Add a subtle error message below the field */
.field-error-message[b-7nifffifom] {
    color: #ef4444;
    font-size: 0.9rem;
    margin-top: 6px;
    margin-left: 4px;
    font-weight: 500;
}
/* /Pages/ReturningVisitor.razor.rz.scp.css */
.panel-wrap[b-pzf3wf01lo] {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 45px 24px 16px;
    box-sizing: border-box;
    font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.panel-card[b-pzf3wf01lo] {
    --control-width: clamp(560px, 90%, 1100px);
    --control-height: 100px;
    width: clamp(800px, 82vw, 1240px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    row-gap: 40px;
    align-content: center;
}

.panel-title[b-pzf3wf01lo] {
    grid-column: 1 / -1;
    width: 100%;
    text-align: center;
    margin: 0 0 8px 0;
    line-height: 1.25;
    font-weight: 600;
    color: #374151;
    font-size: clamp(22px, 2.2vw, 32px);
}

.control-track[b-pzf3wf01lo] {
    grid-column: 1 / -1;
    display: grid;
    justify-items: center;
    row-gap: 24px;
}

/* Search */
.search-wrapper[b-pzf3wf01lo] {
    position: relative;
    width: var(--control-width);
    max-width: 100%;
    justify-self: center;
}

.search-icon[b-pzf3wf01lo] {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #6b7280;
    pointer-events: none;
}

.search-input[b-pzf3wf01lo] {
    width: 100%;
    height: var(--control-height);
    padding: 0 20px 0 60px;
    border: 2px solid #e5e7eb;
    border-radius: 20px;
    font-size: 1.3rem;
    font-weight: 500;
    background: #fff;
    box-sizing: border-box;
    outline: none;
}

    .search-input:focus[b-pzf3wf01lo] {
        border-color: #3D98B6;
    }

    .search-input[b-pzf3wf01lo]::placeholder {
        color: #9ca3af;
        font-weight: 400;
    }

/* Button base (same height as search) */
.btn-action[b-pzf3wf01lo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: var(--control-height);
    padding: 0 20px; 
    border-radius: 16px;
    border: 1px solid transparent;
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1;
    text-decoration: none;
    color: #fff;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

/* Brand variants */
.is-primary[b-pzf3wf01lo] {
    background: #3D98B6;
    border-color: #3D98B6;
    color: #fff;
}

.is-accent[b-pzf3wf01lo] {
    background: #EDAA25;
    border-color: #EDAA25;
    color: #fff;
}

/* actions row layout (one left, two right) */
.actions-row[b-pzf3wf01lo] {
    width: var(--control-width);
    max-width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 20px;
    align-items: center;
    justify-self: center;
}

/* Left: single yellow button aligned left */
.actions-left[b-pzf3wf01lo] {
    display: flex;
    justify-content: flex-start;
}

.alt-email-btn[b-pzf3wf01lo] {
    width: clamp(220px, 22vw, 360px);
}

/* Right: two buttons aligned right */
.actions-right[b-pzf3wf01lo] {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
}

.back-btn[b-pzf3wf01lo] {
    width: clamp(160px, 15vw, 280px);
}

.enter-btn[b-pzf3wf01lo] {
    width: clamp(200px, 15vw, 320px);
} 

/* Small landscape safeguard: allow wrap while keeping sides */
@media (max-width: 1100px) {
    .actions-row[b-pzf3wf01lo] {
        grid-template-columns: 1fr; /* stack rows */
    }

    .actions-left[b-pzf3wf01lo] {
        justify-content: flex-start;
    }

    .actions-right[b-pzf3wf01lo] {
        justify-content: flex-end;
        flex-wrap: wrap;
    }
}
/* /Pages/SignOut.razor.rz.scp.css */
/*Home container */
.panel-wrap[b-4j5ro8871y] {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 45px 24px 16px;
    box-sizing: border-box;
    font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Home card grid */
.panel-card[b-4j5ro8871y] {
    --control-width: clamp(560px, 90%, 1100px);
    --control-height: 100px;
    width: clamp(800px, 82vw, 1240px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    row-gap: 40px;
    align-content: center;
}

/* H1 */
.panel-title[b-4j5ro8871y] {
    grid-column: 1 / -1;
    width: 100%;
    text-align: center;
    margin: 0 0 8px 0;
    line-height: 1.25;
    font-weight: 600;
    color: #374151;
    font-size: clamp(22px, 2.2vw, 32px);
}

/* Centered single-column control track under the title */
.control-track[b-4j5ro8871y] {
    grid-column: 1 / -1;
    display: grid;
    justify-items: center;
    row-gap: 24px;
}

/* Both controls share the same width */
.search-wrapper[b-4j5ro8871y],
.signOut-btn[b-4j5ro8871y] {
    width: var(--control-width);
    max-width: 100%;
    justify-self: center;
}

/* Search field with icon */
.search-wrapper[b-4j5ro8871y] {
    position: relative;
}

.search-icon[b-4j5ro8871y] {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #6b7280;
    pointer-events: none;
}

/* Search INPUT matches button height & corner radius */
.search-input[b-4j5ro8871y] {
    width: 100%;
    height: var(--control-height);
    padding: 0 20px 0 60px; 
    border: 2px solid #e5e7eb;
    border-radius: 20px; 
    font-size: 1.3rem;
    font-weight: 500;
    background: #fff;
    box-sizing: border-box;
    outline: none;
}

    .search-input:focus[b-4j5ro8871y] {
        border-color: #3D98B6;
    }

    .search-input[b-4j5ro8871y]::placeholder {
        color: #9ca3af;
        font-weight: 400;
    }

/* Button base  */
.btn-action[b-4j5ro8871y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--control-height);
    padding: 20px 28px;
    border-radius: 20px;
    border: 1px solid transparent;
    font-weight: 600;
    font-size: 2rem;
    line-height: 1;
    text-decoration: none;
    color: #fff;
    -webkit-tap-highlight-color: transparent;
}

/* Yellow variant */
.is-accent[b-4j5ro8871y] {
    background: #EDAA25;
    color: #fff;
    border-color: #EDAA25;
}

/* === Dropdown styles (match Staff Sign-In) === */

.search-dropdown[b-4j5ro8871y] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #e5e7eb;
    border-top: none;
    border-radius: 0 0 16px 16px;
    max-height: 300px;
    overflow-y: auto;
    z-index: 1000;
}

.dropdown-item[b-4j5ro8871y] {
    padding: 16px 20px;
    cursor: pointer;
    border-bottom: 1px solid #f3f4f6;
}

    .dropdown-item:hover[b-4j5ro8871y] {
        background: #f9fafb;
    }

    .dropdown-item:last-child[b-4j5ro8871y] {
        border-bottom: none;
    }

.user-name[b-4j5ro8871y] {
    font-weight: 600;
    color: #374151;
}

.user-email[b-4j5ro8871y] {
    font-size: 0.9rem;
    color: #6b7280;
}

/* Optional helper text */
.no-results[b-4j5ro8871y],
.search-loading[b-4j5ro8871y] {
    margin-top: 10px;
    color: #6b7280;
    font-size: 0.95rem;
    text-align: center;
}
/* /Pages/StaffSignIn.razor.rz.scp.css */
/* Container */
.panel-wrap[b-ujmw122sff] {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 45px 24px 16px;
    box-sizing: border-box;
}

/* Card */
.panel-card[b-ujmw122sff] {
    /* Shared size for ALL controls on this page */
    --control-width: clamp(560px, 90%, 1100px);
    --control-height: 80px;
    width: clamp(800px, 82vw, 1240px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    row-gap: 20px;
    align-content: center;
}

/* Title */
.panel-title[b-ujmw122sff] {
    grid-column: 1 / -1;
    text-align: center;
    margin: 0 0 8px 0;
    line-height: 1.25;
    font-weight: 600;
    color: #374151;
    font-size: clamp(22px, 2.2vw, 32px);
}

/* Track of controls */
.control-track[b-ujmw122sff] {
    grid-column: 1 / -1;
    display: grid;
    justify-items: center;
    row-gap: 20px;
}

/* SAME width for search, vehicle reg, and button */
.search-wrapper[b-ujmw122sff],
.vehReg-wrapper[b-ujmw122sff],
.signIn-btn[b-ujmw122sff] {
    width: var(--control-width);
    max-width: 100%;
    justify-self: center;
}

/* Inputs */
.input-field[b-ujmw122sff] {
    width: 100%;
    height: var(--control-height);
    padding: 0 20px;
    border: 2px solid #e5e7eb;
    border-radius: 20px;
    font-size: 1.3rem;
    font-weight: 500;
    background: #fff;
    box-sizing: border-box;
    outline: none;
}

    .input-field:focus[b-ujmw122sff] {
        border-color: #3D98B6;
    }

    .input-field[b-ujmw122sff]::placeholder {
        color: #9ca3af;
        font-weight: 400;
    }

/* Search icon inside the input */
.search-wrapper[b-ujmw122sff] {
    position: relative;
}

.search-icon[b-ujmw122sff] {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #6b7280;
    pointer-events: none;
}

.search-input[b-ujmw122sff] {
    padding-left: 60px;
}
/* room for icon */

/* Button — EXACT same height as inputs */
.btn-action[b-ujmw122sff] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: var(--control-height); 
    padding: 0 28px; 
    border-radius: 20px;
    border: 1px solid transparent;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    text-decoration: none;
    color: #fff;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}
.is-accent[b-ujmw122sff] {
    background: #EDAA25;
    border-color: #EDAA25;
    color: #fff;
}
.search-wrapper[b-ujmw122sff] {
    position: relative;
}

.search-dropdown[b-ujmw122sff] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #e5e7eb;
    border-top: none;
    border-radius: 0 0 16px 16px;
    max-height: 300px;
    overflow-y: auto;
    z-index: 1000;
}

.dropdown-item[b-ujmw122sff] {
    padding: 16px 20px;
    cursor: pointer;
    border-bottom: 1px solid #f3f4f6;
}

    .dropdown-item:hover[b-ujmw122sff] {
        background: #f9fafb;
    }

    .dropdown-item:last-child[b-ujmw122sff] {
        border-bottom: none;
    }

.user-name[b-ujmw122sff] {
    font-weight: 600;
    color: #374151;
}

.user-email[b-ujmw122sff] {
    font-size: 0.9rem;
    color: #6b7280;
}

.btn-action:disabled[b-ujmw122sff] {
    opacity: 0.5;
    cursor: not-allowed;
}

.panel-card .alert[b-ujmw122sff] {
    grid-column: 1 / -1; /* Span full width of grid */
    width: var(--control-width);
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
    justify-self: center; /* Center within grid */
}

/* /Shared/MainLayout.razor.rz.scp.css */
/* Root layout - prevent any overflow */
.app-root[b-6tlcxrq9d6] {
    height: 100vh; /* Exact viewport height */
    display: flex;
    flex-direction: column;
    overflow: hidden; 
}

/* Header:45% of screen */
.app-header[b-6tlcxrq9d6] {
    position: relative;
    height: 45vh; 
    min-height: 225px; 
    display: grid;
    place-items: center;
    padding: 16px 20px;
    box-sizing: border-box;
    background: #fff;
    flex-shrink: 0; /* Don't allow header to shrink */
}

.app-logo[b-6tlcxrq9d6] {
    height: clamp(280px, 44vh, 580px);
    max-height: 100%;
    max-width: 94vw;
    width: auto;
    object-fit: contain;
}

/* Larger Home button */
.home-btn[b-6tlcxrq9d6] {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    text-decoration: none;
    background: rgba(0, 0, 0, 0.06);
    border: 1px solid #e5e7eb;
    -webkit-tap-highlight-color: transparent;
}

    .home-btn .bi[b-6tlcxrq9d6] {
        font-size: 28px;
        color: #111;
    }

/* Main content: now exactly 55vh with no padding overflow */
.app-content[b-6tlcxrq9d6] {
    height: 55vh; 
    padding: 0; 
    box-sizing: border-box;
    background: #fff;
    overflow: hidden; 
}

@media (orientation: portrait) {
    .app-logo[b-6tlcxrq9d6] {
        height: clamp(200px, 38vh, 400px); /* Smaller logo for portrait mode */
    }
}
