@import '_content/Planna.Portal.Shared/Planna.Portal.Shared.dfczqctpa4.bundle.scp.css';

/* /Layout/MainLayout.razor.rz.scp.css */
/* Customer portal layout — mobile-first PWA shell */

.customer-app[b-g63q7wmqf8] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;          /* ux-allow-vh: overridden by 100dvh below for modern browsers */
    min-height: 100dvh;         /* dynamic viewport height avoids address-bar flicker */
}

.customer-app main[b-g63q7wmqf8] {
    flex: 1;
    padding-bottom: calc(56px + env(safe-area-inset-bottom) + 16px);
}

.customer-error-ui[b-g63q7wmqf8] {
    display: none;
    padding: 12px;
    background: #fef2f2;
    border-top: 2px solid #ef4444;
    text-align: center;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    padding-bottom: calc(12px + env(safe-area-inset-bottom));
}

.customer-error-ui__reload[b-g63q7wmqf8] {
    color: #4f46e5;
}
/* /Pages/Booking/BookingFlow.razor.rz.scp.css */
/* BookingFlow — scoped styles replacing inline styles */

.ln-flow-accent-icon[b-qbifoulfhy] {
    color: var(--accent);
}

.ln-flow-rebook[b-qbifoulfhy] {
    text-decoration: none;
}

.ln-flow-intake-hint[b-qbifoulfhy] {
    font-size: 13px;
    color: var(--text-2);
    margin-bottom: 16px;
    line-height: 1.65;
}

.ln-flow-summary-mb[b-qbifoulfhy] {
    margin-bottom: 16px;
}

.ln-flow-align-right[b-qbifoulfhy] {
    text-align: right;
}

.ln-flow-required[b-qbifoulfhy] {
    color: var(--red);
}

.ln-flow-error[b-qbifoulfhy] {
    color: var(--red);
    font-size: 13px;
    margin: 8px 0;
}

.ln-flow-btn-link[b-qbifoulfhy] {
    text-decoration: none;
}
/* /Pages/Guest/GuestBookingConfirmed.razor.rz.scp.css */
@keyframes ln-check-pop-b-tg6tvp67ev {
    0%   { transform: scale(0) rotate(-20deg); opacity: 0; }
    60%  { transform: scale(1.15) rotate(4deg); opacity: 1; }
    100% { transform: scale(1) rotate(0deg);    opacity: 1; }
}

.ln-check-pop[b-tg6tvp67ev] {
    animation: ln-check-pop-b-tg6tvp67ev 0.5s cubic-bezier(.17,.67,.41,1.3) 0.15s both;
}

@keyframes ln-ring-pulse-b-tg6tvp67ev {
    0%,100% { box-shadow: 0 0 0 0 var(--green-s); }
    50%      { box-shadow: 0 0 0 10px transparent; }
}

.ln-ring-pulse[b-tg6tvp67ev] {
    animation: ln-ring-pulse-b-tg6tvp67ev 1.8s ease-out 0.5s both;
}

a[class*="btn"][b-tg6tvp67ev] {
    text-decoration: none;
}

.gc-success-bg[b-tg6tvp67ev] {
    background: var(--green-s);
}

.gc-success-icon[b-tg6tvp67ev] {
    color: var(--green);
}

.gc-title[b-tg6tvp67ev] {
    color: var(--text-1);
}

.gc-text[b-tg6tvp67ev] {
    color: var(--text-3);
}

.gc-icon-bg[b-tg6tvp67ev] {
    background: var(--accent-subtle);
}

.gc-icon-accent[b-tg6tvp67ev] {
    color: var(--accent);
}

.gc-ref[b-tg6tvp67ev] {
    color: var(--text-1);
    font-size: 15px;
}

.gc-border-accent[b-tg6tvp67ev] {
    border-color: var(--accent-ring);
}
/* /Pages/Guest/ManageGuestBooking.razor.rz.scp.css */
/* ManageGuestBooking — scoped styles replacing inline styles */

.mgb-container[b-ghaov9eit7] {
    padding-top: 24px;
    padding-bottom: 24px;
}

.mgb-title[b-ghaov9eit7] {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.mgb-skeleton[b-ghaov9eit7] {
    height: 120px;
    border-radius: 12px;
}

.mgb-empty[b-ghaov9eit7] {
    color: var(--muted-fg);
    text-align: center;
}

.mgb-card[b-ghaov9eit7] {
    cursor: default;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 24px;
}

.mgb-card-gap-sm[b-ghaov9eit7] {
    gap: 8px;
}

.mgb-card-gap-md[b-ghaov9eit7] {
    gap: 12px;
}

.mgb-card-mt[b-ghaov9eit7] {
    margin-top: 24px;
}

.mgb-meta[b-ghaov9eit7] {
    font-size: 13px;
    color: var(--muted-fg);
}

.mgb-value[b-ghaov9eit7] {
    font-weight: 700;
}

.mgb-body[b-ghaov9eit7] {
    font-size: 14px;
    margin-bottom: 12px;
}

.mgb-body-mt[b-ghaov9eit7] {
    margin-top: 8px;
}

.mgb-btn[b-ghaov9eit7] {
    width: 100%;
}

.mgb-btn-error-solid[b-ghaov9eit7] {
    width: 100%;
    margin-bottom: 8px;
    background: var(--error);
    color: white;
}

.mgb-btn-error-outline[b-ghaov9eit7] {
    width: 100%;
    border: 2px solid var(--error);
    color: var(--error);
    background: transparent;
}

.mgb-success-center[b-ghaov9eit7] {
    color: var(--success, #10b981);
    text-align: center;
    margin-top: 16px;
    font-weight: 600;
}

.mgb-success-inline[b-ghaov9eit7] {
    color: var(--success, #10b981);
    font-size: 14px;
    font-weight: 600;
}

.mgb-error-inline[b-ghaov9eit7] {
    color: var(--error);
    font-size: 14px;
}

a[class*="customer-btn"][b-ghaov9eit7] {
    text-decoration: none;
}

.mgb-btn-center[b-ghaov9eit7] {
    width: 100%;
    text-align: center;
}
/* /Pages/Home.razor.rz.scp.css */
/* Home — scoped styles replacing inline styles */

.hm-error-center[b-p7ll3fuvjm] {
    min-height: 100dvh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}
/* /Pages/Landing/LandingFooter.razor.rz.scp.css */
/* LandingFooter — scoped styles replacing inline styles */

.lf-cta-center[b-uict26xuoh] {
    justify-content: center;
}
/* /Pages/Landing/LandingHero.razor.rz.scp.css */
/* LandingHero — scoped styles replacing inline styles */

.lh-chevron[b-44pqspb4g8] {
    color: var(--text-1);
}
/* /Pages/Landing/LandingNavbar.razor.rz.scp.css */
/* LandingNavbar — scoped styles replacing inline styles */

.ln-nav-group[b-5cygmmw73x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ln-nav-relative[b-5cygmmw73x] {
    position: relative;
}
/* /Pages/MyBookings/BookingDetail.razor.rz.scp.css */
/* BookingDetail — scoped styles replacing inline styles */

.bd-icon-bg[b-j46dnyby45] {
    background: var(--accent-subtle);
}

.bd-icon-accent[b-j46dnyby45] {
    color: var(--accent);
}

.bd-value[b-j46dnyby45] {
    color: var(--text-1);
}

.bd-note[b-j46dnyby45] {
    color: var(--text-2);
}

.bd-meta[b-j46dnyby45] {
    color: var(--text-3);
}

.bd-border-accent[b-j46dnyby45] {
    border-color: var(--accent-ring);
}

.bd-border-error[b-j46dnyby45] {
    border-color: var(--error-ring, var(--error));
}

.bd-input[b-j46dnyby45] {
    border-color: var(--border-1);
    background: var(--bg-inset);
    color: var(--text-1);
}

.bd-btn-accent-outline[b-j46dnyby45] {
    border: 2px solid var(--accent);
    color: var(--accent);
    background: transparent;
}

.bd-btn-error-solid[b-j46dnyby45] {
    background: var(--error);
    color: #fff;
    border-color: var(--error);
}

.bd-btn-error-outline[b-j46dnyby45] {
    border: 2px solid var(--error);
    color: var(--error);
    background: transparent;
}

.bd-success[b-j46dnyby45] {
    color: var(--success, #10b981);
}

a[class*="btn"][b-j46dnyby45] {
    text-decoration: none;
}
/* /Pages/MyBookings/BookingHistory.razor.rz.scp.css */
/* BookingHistory — scoped styles replacing inline styles */

.bh-retention[b-3u912bx9f5] {
    border-color: var(--accent-ring);
}

.bh-retention-text[b-3u912bx9f5] {
    color: var(--text-3);
}

.bh-link[b-3u912bx9f5] {
    text-decoration: none;
}

.bh-card-h[b-3u912bx9f5] {
    margin-bottom: 10px;
}
/* /Pages/NotFound.razor.rz.scp.css */
/* NotFound — scoped styles replacing inline styles */

.nf-title[b-ze8d5g59ok] {
    color: var(--text-1);
}

.nf-text[b-ze8d5g59ok] {
    color: var(--text-3);
}

.nf-link[b-ze8d5g59ok] {
    text-decoration: none;
}
/* /Pages/Profile/CustomerProfile.razor.rz.scp.css */
/* CustomerProfile — scoped styles replacing inline styles */

a[class*="btn"][b-kt61e9timq] {
    text-decoration: none;
}

.cp-delete-link[b-kt61e9timq] {
    color: var(--error);
    border-color: var(--error);
    text-decoration: none;
    background: transparent;
}
/* /Pages/Profile/NotificationSettings.razor.rz.scp.css */
/* NotificationSettings — scoped styles replacing inline styles */

.ns-link[b-u17plvlg3r] {
    text-decoration: none;
}
/* /Shared/BookingCard.razor.rz.scp.css */
/* BookingCard — scoped styles replacing inline styles */

.bc-link[b-xlphnkquoc] {
    text-decoration: none;
}

.bc-h[b-xlphnkquoc] {
    margin-bottom: 10px;
}

.bc-service[b-xlphnkquoc] {
    font-weight: 500;
}

.bc-staff[b-xlphnkquoc] {
    margin-top: 2px;
}

.bc-price[b-xlphnkquoc] {
    margin-top: 4px;
}

.bc-cancel[b-xlphnkquoc] {
    background: var(--red-s);
    color: var(--red);
    border: 1px solid var(--red);
    touch-action: manipulation;
}
