/* _content/WebappExplorer/Components/Home/AboutSection.razor.rz.scp.css */
.about-section[b-6c2aj9r972] {
    background-color: var(--secondary);
    border-radius: 1rem;
    padding: 1.25rem;
    margin-top: 1.5rem;
}

    .about-section h2[b-6c2aj9r972] {
        font-family: var(--font-serif);
        font-size: 1.25rem;
        font-weight: 700;
        margin-bottom: 1rem;
        color: var(--about-heading, --foreground);
    }

    .about-section p[b-6c2aj9r972] {
        font-family: sans-serif;
        font-size: 0.875rem;
        line-height: 1.8;
        color: var(--muted-foreground);
    }

        .about-section p + p[b-6c2aj9r972] {
            margin-top: 1rem;
        }
/* _content/WebappExplorer/Components/Home/BookVisitCard.razor.rz.scp.css */

.book-section[b-ahwluhkb05] {
    margin: 1.5rem 0;
}
.book-card[b-ahwluhkb05] {
    background: linear-gradient( 135deg, var(--primary) 35%, #294d5bcc 100% );
    color: white;
    border-radius: 1.25rem;
    padding: 1.25rem;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}

/* HEADER */
.book-header[b-ahwluhkb05] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
    align-items: flex-start;
}

.book-icon-wrapper[b-ahwluhkb05] {
    width: 48px;
    height: 48px;
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.book-title[b-ahwluhkb05] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    font-family: var(--font-serif);
}

.book-subtitle[b-ahwluhkb05] {
    font-size: 0.875rem;
    opacity: 0.8;
}

/* GRID INFO */
.book-info-grid[b-ahwluhkb05] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.book-info-item[b-ahwluhkb05] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    opacity: 0.85;
}

/* BUTTON */
.book-button[b-ahwluhkb05] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    height: 40px;
    background: var(--primary-foreground);
    color: var(--primary);
    border-radius: 0.5rem;
    font-size: .85rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s ease, transform 0.1s ease;
}

    .book-button:hover[b-ahwluhkb05] {
        background: #faf8f5e6;
    }

    .book-button:active[b-ahwluhkb05] {
        transform: scale(0.98);
    }

/* ICONS */
.icon-lg[b-ahwluhkb05] {
    width: 24px;
    height: 24px;
}

.icon-sm[b-ahwluhkb05] {
    width: 16px;
    height: 16px;
}
/* _content/WebappExplorer/Components/Home/GuidedTour.razor.rz.scp.css */
.tour-header[b-3lrzeysfsy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.tour-header-title[b-3lrzeysfsy] {
    font-family: var(--font-serif);
    font-size: 1.25rem;
    font-weight: bold;
    color: var(--foreground, #111);
}

.tour-header-link[b-3lrzeysfsy] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--primary, #1d4ed8);
    text-decoration: none;
}

    .tour-header-link:hover[b-3lrzeysfsy] {
        text-decoration: underline;
    }

    .tour-header-link .chevron-right[b-3lrzeysfsy] {
        width: 1rem;
        height: 1rem;
        stroke: currentColor;
    }

.tour-route[b-3lrzeysfsy] {
    margin-top: 1.5rem;
}

    .tour-route h2[b-3lrzeysfsy] {
        font-size: 1.25rem;
        font-weight: bold;
        margin-bottom: 0;
        color: var(--foreground);
        font-family: var(--font-serif);
    }

.tour-map[b-3lrzeysfsy] {
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    aspect-ratio: 5 / 3;
    background-color: #ebe7e0;
}

    .tour-map svg[b-3lrzeysfsy] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
.overlay[b-3lrzeysfsy] {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.4) 0%, transparent 60%);
    pointer-events: none; 
    border-radius: 1rem;
    z-index: 5; 
}

.wave-bottom[b-3lrzeysfsy] {
    fill: #294d5b33;
}

.wave-top[b-3lrzeysfsy] {
    fill: #38332e0d;
}

.route-line[b-3lrzeysfsy] {
    stroke: var(--primary);
    stroke-width: 2;
    stroke-dasharray: 10 1;
}

.poi[b-3lrzeysfsy] {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
}

.poi-circle[b-3lrzeysfsy] {
    position: relative;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--border);
    background: var(--card);
    color: var(--foreground);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

    .poi-circle span:first-child[b-3lrzeysfsy] {
        font-weight: bold;
        font-size: 0.8rem;
        z-index: 10;
    }

.ping[b-3lrzeysfsy] {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #294d5b33;
    animation: ping-b-3lrzeysfsy 1s infinite;
    z-index: 1;
}

@keyframes ping-b-3lrzeysfsy {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    75%,100% {
        transform: scale(2);
        opacity: 0;
    }
}

.poi-start[b-3lrzeysfsy] {
    position: absolute;
}

.start-circle[b-3lrzeysfsy] {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: #38332ecc;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--card);
    font-size: 0.75rem;
    font-weight: bold;
}

.tour-info-card[b-3lrzeysfsy] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1rem;
    z-index: 15; 
    color: white;
    pointer-events: none;
}

.tour-info-header[b-3lrzeysfsy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}
.tour-subtitle[b-3lrzeysfsy] {
    font-size: 0.95rem;
    opacity: 0.8;
}

.tour-title[b-3lrzeysfsy] {
    font-family: var(--font-serif);
    font-size: 1.25rem;
    font-weight: bold;
    margin: 0;
}

.tour-meta[b-3lrzeysfsy] {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
    font-size: 0.85rem;
    opacity: 0.7;
    align-items: center;
}

    .tour-meta .points[b-3lrzeysfsy] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
    }
/* _content/WebappExplorer/Components/Home/MyExperience.razor.rz.scp.css */
.experience-card[b-gvxihkroys] {
    border-radius: 1rem;
    margin-top: 1.5rem;
    padding: 1.25rem;
    border: 1px solid var(--border);
    background-color: var(--card);
}

.card-header[b-gvxihkroys] {
    display: flex;
    justify-content: space-between;
    border: none;
    align-items: center;
    background: transparent;
}

.card-title[b-gvxihkroys] {
    font-family: var(--font-serif);
    font-size: 1.125rem;
    font-weight: bold;
    color: var(--foreground, #111);
}

.card-link[b-gvxihkroys] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--primary);
    text-decoration: none;
    cursor: pointer;
}

    .card-link:hover[b-gvxihkroys] {
        text-decoration: underline;
    }

/* Progress / Points */
.card-progress[b-gvxihkroys] {
    display: flex;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}

.progress-circle-wrapper[b-gvxihkroys] {
    position: relative;
    width: 5rem;
    height: 5rem;
}

.progress-circle-bg[b-gvxihkroys] {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.circle-bg[b-gvxihkroys] {
    fill: none;
    stroke: #ebe7e04d;
    stroke-width: 8;
}

.circle-fg[b-gvxihkroys] {
    fill: none;
    stroke: var(--primary);
    stroke-width: 8;
    stroke-linecap: round;
}

.progress-text[b-gvxihkroys] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-family: var(--font-serif);
    color: var(--foreground);
}

    .progress-text .current[b-gvxihkroys] {
        font-size: 1.25rem;
        font-weight: bold;
    }

    .progress-text .total[b-gvxihkroys] {
        font-size: 0.725rem;
        color: var(--muted-foreground);
    }

/* Points visited */
.points-list[b-gvxihkroys] {
    margin-top: auto;
    flex: 1;
    margin-bottom: .65rem;
}

.points-label[b-gvxihkroys] {
    font-size: 0.9rem;
    color: var(--muted-foreground);
    margin-bottom: 0.5rem;
}

.points-items[b-gvxihkroys] {
    display: flex;
    gap: 0.5rem;
}

    .points-items .point[b-gvxihkroys] {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #ebe7e0;
        color: var(--muted-foreground);
        font-size: 0.75rem;
        font-weight: bold;
    }

/* POI links */
.poi-links[b-gvxihkroys] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;

}

.poi-item[b-gvxihkroys] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 1rem;
    background-color: var(--secondary);
    text-decoration: none;
    transition: background 0.2s;
    cursor: pointer;
}

    .poi-item:hover[b-gvxihkroys] {
        opacity: 0.9;
    }

.poi-icon[b-gvxihkroys] {
    width: 2rem;
    height: 2rem;
    flex-shrink: 0;
    border-radius: 50%;
    background-color: #7e736733;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted-foreground);
}

.circle-icon[b-gvxihkroys] {
    width: 1rem;
    height: 1rem;
    stroke: var(--muted-foreground);
    fill: none;
}

.poi-info[b-gvxihkroys] {
    flex: 1;
    min-width: 0;
}

.poi-name[b-gvxihkroys] {
    font-size: 0.875rem;
    font-weight: 500;
    color: rgba(0,0,0,0.6);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0;
}

.poi-point[b-gvxihkroys] {
    font-size: 0.75rem;
    color: rgba(0,0,0,0.6);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0;
}

.poi-pin[b-gvxihkroys] {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    stroke: var(--muted-foreground);
    fill: none;
}
/* _content/WebappExplorer/Components/Home/QuickActions.razor.rz.scp.css */

.quick-actions[b-esuim63vtc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    overflow-x: auto;
    padding: 0.25rem 0.25rem;
    scrollbar-width: none; 
    padding-top: 1.5rem;
}

    .quick-actions[b-esuim63vtc]::-webkit-scrollbar {
        display: none; 
    }

.quick-action-item[b-esuim63vtc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background-color: var(--card);
    border: 1px solid var( --border);
    border-radius: 9999px;
    white-space: nowrap;
    text-decoration: none;
    color: var(--foreground);
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

    .quick-action-item:hover[b-esuim63vtc] {
        background-color: var(--secondary);
    }

    .quick-action-item .icon[b-esuim63vtc] {
        display: flex;
        width: 1rem;
        height: 1rem;
        color: var(--muted-foreground);
    }

        .quick-action-item .icon svg[b-esuim63vtc] {
            width: 100%;
            height: 100%;
        }

    .quick-action-item .label[b-esuim63vtc] {
        font-size: 0.875rem;
        font-weight: 500;
        font-family: inherit;
    }
/* _content/WebappExplorer/Components/Layout/BottomNav.razor.rz.scp.css */
.bottom-nav[b-ghwdmvvstz] {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--primary-foreground);
    border-top: 1px solid var(--border);
    padding: 8px 0;
    z-index: 999;
}
    .bottom-nav > *[b-ghwdmvvstz] {
        flex: 1;
        display: flex;
        justify-content: center;
    }

.bottom-nav-button[b-ghwdmvvstz] {
    background: none;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 9px 3px;
    border-radius: 12px;
    color: #888;
    font-size: 12px;
    cursor: pointer;
    transition: color 0.2s;
    width: 100%;
    margin: 10px;
}
    .bottom-nav-button span[b-ghwdmvvstz] {
        margin-top: .25rem;
        font-size: .75rem;
        font-weight: 700;
    }

    .bottom-nav-button svg[b-ghwdmvvstz] {
        width: 20px;
        height: 20px;
    }


    .bottom-nav-button.active[b-ghwdmvvstz] {
        color: var(--primary);
        background-color: #294d5b1a;
    }

    .bottom-nav-button:focus[b-ghwdmvvstz] {
        outline: none;
    }

@media (max-width: 360px) {
    .bottom-nav-button[b-ghwdmvvstz] {
        margin: 5px;
    }
}
/* _content/WebappExplorer/Components/Layout/ChatWidget.razor.rz.scp.css */
.chat-widget-btn[b-xejwhv3041] {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    border: 4px solid #fff;
    background-color: var(--primary);
    color: var(--primary-foreground);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s, transform 0.3s;
    transform: translateY(-25%);
}


.chat-widget-icon[b-xejwhv3041] {
    width: 1.5rem;
    height: 1.5rem;
}


/* Chat Panel */
.chat-panel[b-xejwhv3041] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70dvh;
    max-height: 600px;
    display: flex;
    flex-direction: column;
    background: var(--primary-foreground);
    border-top: 1px solid var(--border);
    border-radius: 1.5rem 1.5rem 0 0;
    box-shadow: 0 20px 25px rgba(0,0,0,0.1);
    z-index: 1000;
}

/* Header */
.chat-header[b-xejwhv3041] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border);
}

.chat-header-info[b-xejwhv3041] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.chat-avatar[b-xejwhv3041] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: rgba(0,0,0,0.05);
    display: flex;
    align-items: center;
    justify-content: center;
}

.chat-header-icon[b-xejwhv3041] {
    width: 1rem;
    height: 1rem;
    color: var(--primary);
}

.chat-title[b-xejwhv3041] {
    font-family: var(--font-serif);
    font-weight: bold;
    font-size: 0.875rem;
    line-height: 1rem;
}

.chat-subtitle[b-xejwhv3041] {
    font-size: 0.75rem;
    color: var(--muted-foreground);
}

/* Close button */
.chat-close-btn[b-xejwhv3041] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
    background: var(--primary-foreground);
}

    .chat-close-btn:hover[b-xejwhv3041] {
        background: rgba(0,0,0,0.05);
    }

.chat-close-icon[b-xejwhv3041] {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--muted-foreground);
}

/* Messages */
.chat-messages[b-xejwhv3041] {
    flex: 1;
    overflow-y: auto;
    padding: 0.75rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.message.assistant-message[b-xejwhv3041] {
    max-width: 85%;
    padding: 0.625rem 1rem;
    background: var(--secondary);
    border-radius: 1rem;
    border-bottom-left-radius: 0.25rem;
    font-size: 0.875rem;
    align-self: flex-start; 
}

.message.user-message[b-xejwhv3041] {
    max-width: 85%;
    padding: 0.625rem 1rem;
    background: var(--primary);
    color: var(--primary-foreground);
    border-radius: 1rem;
    border-bottom-right-radius: 0.375rem;
    font-size: 0.875rem;
    line-height: 1.625;
    align-self: flex-end; 
}

/* Suggestions */
.chat-suggestions .suggestions-label[b-xejwhv3041] {
    font-size: 0.75rem;
    color: var(--muted-foreground);
}

.suggestion-buttons[b-xejwhv3041] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

    .suggestion-buttons button[b-xejwhv3041] {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
        border-radius: 9999px;
        border: 1px solid var(--border);
        background: var(--background);
        color: var(--foreground);
        transition: background 0.2s;
    }

        .suggestion-buttons button:hover[b-xejwhv3041] {
            background: var(--secondary);
        }

/* Input */
.chat-input[b-xejwhv3041] {
    display: flex;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border);
    gap: 0.5rem;
}

    .chat-input input[b-xejwhv3041] {
        flex: 1;
        height: 2.5rem;
        border-radius: 9999px;
        border: 1px solid var(--border);
        padding: 0 1rem;
        font-size: 0.875rem;
        background: var(--primary-foreground);
    }

    .chat-input button[b-xejwhv3041] {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 50%;
        border: 0;
        background: var(--primary);
        color: var(--primary-foreground);
        display: flex;
        align-items: center;
        justify-content: center;
        transition: opacity 0.2s;
    }

        .chat-input button:disabled[b-xejwhv3041] {
            opacity: 0.5;
            cursor: not-allowed;
        }

.chat-send-icon[b-xejwhv3041] {
    width: 1rem;
    height: 1rem;
}
.typing-dots[b-xejwhv3041] {
    display: flex;
    gap: 4px;
}

    .typing-dots span[b-xejwhv3041] {
        width: 6px;
        height: 6px;
        background-color: #999;
        border-radius: 50%;
        animation: blink-b-xejwhv3041 1.4s infinite;
    }

        .typing-dots span:nth-child(2)[b-xejwhv3041] {
            animation-delay: 0.2s;
        }

        .typing-dots span:nth-child(3)[b-xejwhv3041] {
            animation-delay: 0.4s;
        }

@keyframes blink-b-xejwhv3041 {
    0%, 80%, 100% {
        opacity: 0.2;
    }

    40% {
        opacity: 1;
    }
}

@media (min-width: 768px) {
    .chat-panel[b-xejwhv3041] {
        inset: auto; 
        right: 1rem;
        bottom: 1rem; 
        width: 24rem; 
        max-height: 520px; 
        border-radius: 1rem;
        border: 1px solid var(--border); 
    }

}
/* _content/WebappExplorer/Components/Layout/MainLayout.razor.rz.scp.css */
.app-container[b-n7he4xu3tu] {
    display: flex;
    flex-direction: column;
    min-height: 100vh; 
    box-sizing: border-box;
}

/* Conte�do principal: centralizado e limitado a 1400px */
.content[b-n7he4xu3tu] {
    flex: 1;
    overflow: visible;
    padding-bottom: var(--bottom-nav-height, 60px);
    max-width: 1400px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0;
    margin-bottom: 2.5rem;
}
/* _content/WebappExplorer/Components/Map/MapLegend.razor.rz.scp.css */
.map-legend[b-132xs90jxa] {
    margin-top: 1.5rem;
    padding: 1rem;
    background: var(--secondary);
    border-radius: 12px;
}

.map-legend-title[b-132xs90jxa] {
    font-weight: 500;
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
    color: #111827;
}

.map-legend-items[b-132xs90jxa] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.legend-item[b-132xs90jxa] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--muted-foreground);
}

.legend-dot[b-132xs90jxa] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    color: var(--muted-foreground);
}

.legend-visited[b-132xs90jxa] {
    background: var(--primary);
}

.legend-to-visit[b-132xs90jxa] {
    background: var(--card);
    border: 2px solid var(--border);
}

.legend-start[b-132xs90jxa] {
    background: rgba(17, 24, 39, 0.8);
}

.legend-line[b-132xs90jxa] {
    width: 24px;
    height: 0;
    border-top: 2px dashed var(--primary);
}
/* _content/WebappExplorer/Components/Map/TourRoute.razor.rz.scp.css */
.tour-route[b-ggs8v0pcxv] {
    margin-top: 1.5rem;
   
}

    .tour-route h2[b-ggs8v0pcxv] {
        font-size: 1.25rem;
        font-weight: bold;
        margin-bottom: 1rem;
        color: var(--foreground);
        font-family: var(--font-serif);
    }

.tour-map[b-ggs8v0pcxv] {
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background-color: #ebe7e0;
}

    .tour-map svg[b-ggs8v0pcxv] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

.wave-bottom[b-ggs8v0pcxv] {
    fill: #294d5b33;
}

.wave-top[b-ggs8v0pcxv] {
    fill: #38332e0d;
}

.route-line[b-ggs8v0pcxv] {
    stroke: var(--primary);
    stroke-width: 2;
    stroke-dasharray: 10 1;
}

.poi[b-ggs8v0pcxv] {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    opacity: 1;
}

.poi-circle[b-ggs8v0pcxv] {
    position: relative;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--border);
    background: var(--card);
    color: var(--foreground);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    transition: all 0.2s;
}

    .poi-circle span:first-child[b-ggs8v0pcxv] {
        font-weight: bold;
        font-size: 0.8rem;
        z-index: 10;
    }

.ping[b-ggs8v0pcxv] {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #294d5b33;
    animation: ping-b-ggs8v0pcxv 1s infinite;
    z-index: 1;
}

@keyframes ping-b-ggs8v0pcxv {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    75%, 100% {
        transform: scale(2);
        opacity: 0;
    }
}

.poi-label[b-ggs8v0pcxv] {
    margin-top: 0.5rem;
    padding: 0.175rem 0.5rem;
    background: var(--card);
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    color: var(--foreground);
    font-weight: 700;
    border: 1px solid #e5e7eb;
}

    .poi-label p[b-ggs8v0pcxv] {
        font-size: 0.715rem;
        font-weight: 700;
        color: var(--foreground);
        white-space: nowrap;
        margin: 0;
    }

.poi-start[b-ggs8v0pcxv] {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.start-circle[b-ggs8v0pcxv] {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: #38332ecc;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--card);
    font-size: 0.75rem;
    font-weight: bold;
}

.poi-start p[b-ggs8v0pcxv] {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: var(--foreground);
    white-space: nowrap;
}

.tour-legend[b-ggs8v0pcxv] {
    position: absolute;
    bottom: 0.75rem;
    left: 0.75rem;
    display: flex;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--card);
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
}

.legend-item[b-ggs8v0pcxv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.visited-dot[b-ggs8v0pcxv] {
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    background: var(--primary);
}

.to-visit-dot[b-ggs8v0pcxv] {
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    border: 2px solid var(--border);
    background: var(--card);
}

.legend-item span[b-ggs8v0pcxv] {
    font-size: 0.75rem;
    color: var(--muted-foreground);
}
/* _content/WebappExplorer/Components/POI/AskQuestion.razor.rz.scp.css */
.question-card[b-31ep9uxyjm] {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1rem;
}

.question-header[b-31ep9uxyjm] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.icon-circle[b-31ep9uxyjm] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #294d5b1a;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon[b-31ep9uxyjm] {
    width: 20px;
    height: 20px;
    color: var(--primary);
}

.question-header h3[b-31ep9uxyjm] {
    font-size: 20px;
    font-weight: 700;
    margin: 0;
    font-family: var(--font-serif)
}

.question-header p[b-31ep9uxyjm] {
    font-size: .85rem;
    color: var(--muted-foreground);
    margin: 2px 0 0 0;
}

.question-form[b-31ep9uxyjm] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.textarea-wrapper textarea[b-31ep9uxyjm] {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    background: var(--primary-foreground);
    border: 1px solid var(--border);
    resize: none;
    font-size: 1rem;
}

    .textarea-wrapper textarea:focus[b-31ep9uxyjm] {
        outline: none;
        border-color: #6366f1;
        box-shadow: 0 0 0 2px rgba(99,102,241,0.2);
    }

button[b-31ep9uxyjm] {
    width: 185px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 22px;
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: 0.2s;
}

    button:hover[b-31ep9uxyjm] {
        background: #294d5be6;
    }

    button:disabled[b-31ep9uxyjm] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.send-icon[b-31ep9uxyjm] {
    width: 16px;
    height: 16px;
}
/* _content/WebappExplorer/Components/POI/PoiInfoCard.razor.rz.scp.css */
.container-card[b-mxme8mhbkw] {
    background: var(--card);
    border-radius: 1rem;
    padding: 1.25rem;
    margin-top: -4.75rem;
    border: 1px solid var(--border);
    box-shadow: 0 10px 20px rgba(0,0,0,0.06);
    margin-bottom: 1.5rem;
    position: relative;
    z-index: 10;
}

.tag[b-mxme8mhbkw] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    color: var(--tag-color, var(--muted-foreground));
    background-color: var(--tag-bg, var(--secondary));
    font-size: 0.75rem;
    margin-bottom: 1rem;
}

.title[b-mxme8mhbkw] {
    font-family: var(--font-serif);
    font-size: 1.5rem;
    font-weight: 600;
    color: #111827;
    margin-bottom: 0.5rem;
}

.description[b-mxme8mhbkw] {
    font-size: 0.875rem;
    color: var(--muted-foreground);
    line-height: 1.5rem;
    margin-bottom: 1.5rem;
}

.grid-info[b-mxme8mhbkw] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.info-card[b-mxme8mhbkw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.5rem;
    border-radius: 1rem;
    background-color: var(--secondary);
}

.info-label[b-mxme8mhbkw] {
    font-size: 0.75rem;
    color: var(--muted-foreground);
    margin-bottom: 0;
}

.info-text[b-mxme8mhbkw] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--foreground);
}
/* _content/WebappExplorer/Components/POI/PoiParentContexts.razor.rz.scp.css */
.accordion-card[b-19033v8it8] {
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    background: var(--card);
    margin-bottom: 16px;
}

.accordion-header[b-19033v8it8] {
    width: 100%;
    padding: 16px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--card);
    border: none;
    cursor: pointer;
    font-weight: 600;
}

    .accordion-header:hover[b-19033v8it8] {
        background: var(--secondary);
    }

.accordion-title[b-19033v8it8] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--muted-foreground);
}

.chevron[b-19033v8it8] {
    transition: transform 0.3s;
    color: var(--muted-foreground);
}

    .chevron.rotate[b-19033v8it8] {
        transform: rotate(180deg);
    }

.accordion-body[b-19033v8it8] {
    padding: 1rem;
}

    .accordion-body h4[b-19033v8it8] {
        margin: 0 0 4px 0;
        font-size: 1.05rem;
        color: var(--foreground);
    }

    .accordion-body p[b-19033v8it8] {
        font-size: 0.875rem;
        color: var(--muted-foreground);
        line-height: 1.5rem;
        margin-bottom: .5rem;
    }
.tags-wrapper[b-19033v8it8] {
    margin-top: 12px;
}

.tags-title[b-19033v8it8] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--muted-foreground);
    margin-bottom: 6px;
}
.tags[b-19033v8it8] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag[b-19033v8it8] {
    padding: 6px 12px;
    font-size: 0.75rem;
    border-radius: 999px;
    background: var(--secondary);
    color: var(--tag-color, var(--muted-foreground));
    border: 1px solid var(--border);
    transition: all 0.2s ease;
    cursor: default;
}

    /* hover subtil */
    .tag:hover[b-19033v8it8] {
        cursor: pointer;
    }
/* _content/WebappExplorer/Components/POI/ProductAccordion.razor.rz.scp.css */

.accordion-card[b-rfkb4aj9hs] {
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    background: var(--card);
    margin-bottom: 16px;
}

.accordion-header[b-rfkb4aj9hs] {
    width: 100%;
    padding: 16px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--card);
    border: none;
    cursor: pointer;
    font-weight: 600;
}

    .accordion-header:hover[b-rfkb4aj9hs] {
        background: var(--secondary);
    }

.accordion-title[b-rfkb4aj9hs] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #698131;
}

.icon[b-rfkb4aj9hs] {
    color: var(--muted-foreground);
}

.chevron[b-rfkb4aj9hs] {
    transition: transform 0.3s;
    color: var(--muted-foreground);
}

    .chevron.rotate[b-rfkb4aj9hs] {
        transform: rotate(180deg);
    }

.accordion-body[b-rfkb4aj9hs] {
    padding: 1rem 1rem 0 1rem;
}

.fact[b-rfkb4aj9hs] {
    border-left: 2px solid #ddd;
    padding-left: 12px;
    margin-bottom: 16px;
}

    .fact h4[b-rfkb4aj9hs], .timeline-item h4[b-rfkb4aj9hs], .accordion-body h4[b-rfkb4aj9hs] {
        margin: 0 0 4px 0;
        font-size: 1.05rem;
        color: var(--foreground);
    }

    .fact p[b-rfkb4aj9hs], .timeline-item p[b-rfkb4aj9hs], .accordion-body p[b-rfkb4aj9hs] {
        font-size: 0.875rem;
        color: var(--muted-foreground);
        line-height: 1.5rem;
        margin-bottom: 1.5rem;
    }

.timeline-item[b-rfkb4aj9hs] {
    display: flex;
    gap: 16px;
}

.timeline-number[b-rfkb4aj9hs] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: #698131;
}

.tags[b-rfkb4aj9hs] {
    margin-top: 1rem;
    margin-bottom: 1.5rem;
}

    .tags span[b-rfkb4aj9hs] {
        display: inline-block;
        margin-left: 1rem;
        font-size: .85rem;
        font-weight: 500;
        color: #698131;
        
    }
/* _content/WebappExplorer/Components/QR/QRInfoCard.razor.rz.scp.css */

.qr-info[b-zw6z2438fy] {
    margin-top: 1rem; 
    max-width: 24rem;
    margin-left: auto;
    margin-right: auto; 
    background-color: var(--secondary); 
    border-radius: 1rem; 
    padding: 1rem; 
}

    .qr-info h3[b-zw6z2438fy] {
        font-family: var(--font-serif);
        font-size: 0.875rem; 
        font-weight: bold; 
        color: var(--foreground); 
        margin-bottom: 0.5rem; 
    }

    .qr-info ul[b-zw6z2438fy] {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        font-size: 0.75rem; 
        color: var(--muted-foreground); 
    }

    .qr-info li[b-zw6z2438fy] {
        display: flex;
        align-items: flex-start;
        gap: 0.5rem; 
    }

        .qr-info li span[b-zw6z2438fy] {
            width: 1.25rem; 
            height: 1.25rem; 
            border-radius: 9999px; 
            background-color: rgba(59, 130, 246, 0.1); 
            color: var(--primary); 
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            font-size: 0.75rem; 
            font-weight: bold;
        }
/* _content/WebappExplorer/Components/QR/QrScanner.razor.rz.scp.css */
.qr-scanner[b-cqmmlnf8tk] {
    margin-top: 1rem;
    margin-bottom: 2rem;
    max-width: 24rem; 
    margin-left: auto;
    margin-right: auto;
}

.aspect-square[b-cqmmlnf8tk] {
    aspect-ratio: 1 / 1;
}

.rounded-2xl[b-cqmmlnf8tk] {
    border-radius: 1rem;
}

.qr-alert[b-cqmmlnf8tk] {
    margin-top: 1rem; 
    padding: 1rem; 
    border-radius: 1rem; 
    background-color: rgba(220, 38, 38, 0.1);
    border: 1px solid rgba(220, 38, 38, 0.2); 
    display: flex;
    align-items: flex-start; 
    gap: 0.75rem;
    opacity: 1;
    transform: none;
}
    .qr-alert svg[b-cqmmlnf8tk] {
        width: 1.25rem; 
        height: 1.25rem; 
        color: rgb(220, 38, 38); 
        flex-shrink: 0;
        margin-top: 0.125rem;
    }

    .qr-alert p:first-of-type[b-cqmmlnf8tk] {
        font-weight: 500; 
        font-size: 0.875rem; 
        color: var(--foreground);
        margin: 0;
    }

    .qr-alert p:last-of-type[b-cqmmlnf8tk] {
        font-weight: 400;
        font-size: 0.75rem; 
        color: var(--muted-foreground);
        margin-top: 0.25rem; 
        margin-bottom:0;
    }

    .qr-alert button[b-cqmmlnf8tk] {
        margin-top: 0.75rem; 
        font-weight: 600;
        font-size: 0.875rem; 
        color: var(--primary);
        background: none;
        border: none;
        padding: 0;
        cursor: pointer;
    }

        .qr-alert button:hover[b-cqmmlnf8tk] {
            text-decoration: underline; 
        }

.qr-searching[b-cqmmlnf8tk] {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

    .qr-searching svg[b-cqmmlnf8tk] {
        width: 1rem;
        height: 1rem;
        color: var(--primary);
    }

    .qr-searching span[b-cqmmlnf8tk] {
        font-size: 0.875rem;
        color: var(--muted-foreground);
    }

#qr-reader video[b-cqmmlnf8tk] {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover; 
}

#qr-reader canvas[b-cqmmlnf8tk] {
    width: 100% !important;
    height: 100% !important;
}

#qr-reader__dashboard[b-cqmmlnf8tk],
#qr-reader__status_span[b-cqmmlnf8tk],
#qr-reader__header_message[b-cqmmlnf8tk] {
    display: none !important;
}

#qr-reader[b-cqmmlnf8tk] {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
/* _content/WebappExplorer/Components/Shared/AppHeader.razor.rz.scp.css */
.app-header[b-rx6ob7ijia] {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    position: sticky;
    top: 0;
    z-index: 40;
    background-color: #faf8f5f2;
    backdrop-filter: blur(5px);
    border-bottom: 1px solid var(--border);
}

    .app-header .container[b-rx6ob7ijia] {
        width: 100%;
        padding: 1rem;
        display: flex;
        align-items: center;
    }

    .app-header .left[b-rx6ob7ijia] {
        display: flex;
        align-items: center;
        gap: 0.75rem;
    }

    .app-header h1[b-rx6ob7ijia] {
        font-family: var(--font-serif);
        font-size: 1.125rem;
        font-weight: bold;
        color: var(--foreground);
        margin: 0;
    }

.back-button[b-rx6ob7ijia] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    border-radius: 0.75rem;
    transition: background-color 0.2s;
    color: var(--foreground);
    text-decoration: none;
}

    .back-button:hover[b-rx6ob7ijia] {
        background-color: var(--secondary);
    }

.icon[b-rx6ob7ijia] {
    width: 1.25rem;
    height: 1.25rem;
}
/* _content/WebappExplorer/Components/Shared/ItemCard.razor.rz.scp.css */
.item-card[b-m5p7k0cjjp] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem;
    background: var(--card);
    border-radius: 0.75rem;
    border: 1px solid var(--border);
    text-decoration: none;
    transition: box-shadow 0.2s ease;
}

    .item-card:hover[b-m5p7k0cjjp] {
        box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }

.item-card-image[b-m5p7k0cjjp] {
    width: 64px;
    height: 64px;
    border-radius: 0.75rem;
    overflow: hidden;
    flex-shrink: 0;
}

    .item-card-image img[b-m5p7k0cjjp] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.item-card-content[b-m5p7k0cjjp] {
    flex: 1;
    min-width: 0;
}

.item-card-header[b-m5p7k0cjjp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.item-card-number[b-m5p7k0cjjp] {
    min-width: 24px;
    height: 24px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: bold;
    color: var(--muted-foreground);
    background-color: #ebe7e0;
}

.item-card-title[b-m5p7k0cjjp] {
    font-family: var(--font-serif);
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: var(--about-heading, var(--foreground));
}

.item-card-description[b-m5p7k0cjjp] {
    font-size: 0.875rem;
    color: var(--muted-foreground);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0;
}

.item-card-chevron[b-m5p7k0cjjp] {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    color: #999;
}
/* _content/WebappExplorer/Components/Shared/ItemList.razor.rz.scp.css */
.list-section[b-d1z33v4n8w] {
    margin-top: 1.5rem;
}

.list-section-header[b-d1z33v4n8w] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .5rem;
}

    .list-section-header h2[b-d1z33v4n8w] {
        font-family: var(--font-serif);
        font-size: 1.25rem;
        font-weight: 700;
        color: var(--about-heading, var(--foreground));
    }

.list-grid[b-d1z33v4n8w] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}
/* _content/WebappExplorer/Components/Shared/LoadingSpinner.razor.rz.scp.css */
.loading-spinner[b-t2025c0uqw] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    pointer-events: none;
}

.spinner[b-t2025c0uqw] {
    width: 48px;
    height: 48px;
    border: 5px solid rgba(0, 0, 0, 0.08);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: spin-b-t2025c0uqw 0.9s linear infinite;
    box-shadow: 0 0 12px rgba(0,0,0,0.06);
}

.loading-text[b-t2025c0uqw] {
    font-size: 0.9rem;
    line-height: 1;
}

@keyframes spin-b-t2025c0uqw {
    to { transform: rotate(360deg); }
}
/* _content/WebappExplorer/Components/Shared/MobileHero.razor.rz.scp.css */
/* MobileHero (full-bleed) com imagem de fundo */
.mobile-hero[b-yykfhv8gvy] {
    width: 100vw;
    height: 360px;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
    padding: 1rem 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-start; 
    align-items: flex-start;
    color: white;
    position: relative; 
}

    .mobile-hero.no-content[b-yykfhv8gvy]::before {
        background: linear-gradient( to bottom, rgba(0, 0, 0, 0.35) 0%, 
        rgba(0, 0, 0, 0.55) 65%, 
        rgba(0, 0, 0, 0.7) 100% 
        );
    }
.lang-switch[b-yykfhv8gvy] {
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    display: flex;
    gap: 0.4rem;
    z-index: 5;
}
.lang-btn[b-yykfhv8gvy] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: none;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    cursor: pointer;
    background-color: rgba(255,255,255,0.2);
    color: white;
    backdrop-filter: blur(6px);
    transition: all 0.2s ease;
}

    .lang-btn:hover[b-yykfhv8gvy] {
        background-color: rgba(255,255,255,0.35);
    }

    
    .lang-btn.active[b-yykfhv8gvy] {
        background-color: white;
        color: black;
    }

.mobile-hero .hero-logo[b-yykfhv8gvy] {
    width: 65px;
    height: auto;
}
.mobile-hero h1[b-yykfhv8gvy] {
    margin: 0;
    text-transform: uppercase;
    font-size: 1.5rem;
    line-height: 1.05;
    font-weight: 600;
    letter-spacing: 0.16em;
}
.mobile-hero p[b-yykfhv8gvy] {
    margin: 0.3rem 0 0;
    text-transform: uppercase;
    font-size: .72rem;
    letter-spacing: 0.28em;
    opacity: 0.75;
}
    .mobile-hero[b-yykfhv8gvy]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient( to bottom, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.25) 65%, rgba(0, 0, 0, 0.7) 100% );
        z-index: 0;
    }

    .mobile-hero > *[b-yykfhv8gvy] {
        position: relative;
        z-index: 1;
    }
.icon-white[b-yykfhv8gvy] {
    filter: invert(100%) brightness(150%);
}

.mobile-hero h1[b-yykfhv8gvy] {
    margin: 0;
    text-transform: uppercase;
    font-size: 1.5rem;
    line-height: 1.05;
    font-weight: 600;
    letter-spacing: 0.16em;
}

.mobile-hero p[b-yykfhv8gvy] {
    margin: 0.3rem 0 0;
    text-transform: uppercase;
    font-size: 0.72rem;
    letter-spacing: 0.28em;
    opacity: 0.75;
}

.hero-status[b-yykfhv8gvy] {
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.825rem;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: .5rem;
}

.status-dot[b-yykfhv8gvy] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #4ade80;
    animation: statusPulse-b-yykfhv8gvy 1.8s ease-in-out infinite;
}

@keyframes statusPulse-b-yykfhv8gvy {
    0% {
        box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
    }

    70% {
        box-shadow: 0 0 0 6px rgba(74, 222, 128, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(74, 222, 128, 0);
    }
}

.back-button[b-yykfhv8gvy] {
    position: absolute;
    top: 1rem;
    left: 1rem;
    padding: 0.5rem;
    border-radius: 1.5rem;
    background-color: rgba(0,0,0,0.3);
    backdrop-filter: blur(5px);
    color: white;
    transition: background-color 0.2s;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer; 
    font: inherit; 
}
    .back-button:hover[b-yykfhv8gvy] {
        background-color: rgba(0,0,0,0.5);
    }
/* _content/WebappExplorer/Components/Shared/QuickAccess.razor.rz.scp.css */
.quick-access[b-fc492hl3i4] {
    margin-top: 1.5rem;
}

.quick-access-title[b-fc492hl3i4] {
    font-family: var(--font-serif) ;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 1rem;
    color: #111827;
}

.quick-access-list[b-fc492hl3i4] {
    display: flex;
    gap: 0.75rem;
    overflow-x: auto;
    padding-bottom: 0.5rem;
    scrollbar-width: none; 
    -ms-overflow-style: none; 
}

    .quick-access-list[b-fc492hl3i4]::-webkit-scrollbar {
        display: none; 
    }

.quick-card[b-fc492hl3i4] {
    flex-shrink: 0;
    width: 8rem;
    text-decoration: none;
}

.quick-card-container[b-fc492hl3i4] {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.quick-card-image[b-fc492hl3i4] {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
}

    .quick-card-image img[b-fc492hl3i4] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.quick-card-gradient[b-fc492hl3i4] {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
}

.quick-card-number[b-fc492hl3i4] {
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
}

    .quick-card-number span[b-fc492hl3i4] {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: rgba(255,255,255,0.9);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.75rem;
        font-weight: bold;
        color: #111827;
    }

.quick-card-title[b-fc492hl3i4] {
    position: absolute;
    bottom: 0.5rem;
    left: 0.5rem;
    right: 0.5rem;
}

    .quick-card-title p[b-fc492hl3i4] {
        color: white;
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 0;
    }
/* _content/WebappExplorer/Components/Tour/TourActions.razor.rz.scp.css */
.tour-actions[b-j8eewa9c8y] {
    display: flex;
    gap: .75rem;
    margin-bottom: 1.5rem;
}

    .tour-actions button[b-j8eewa9c8y] {
        flex: 1;
    }

.btn-primary[b-j8eewa9c8y],
.btn-secondary[b-j8eewa9c8y] {
    height: 40px;
    padding: 0 1rem;
    border-radius: 8px;
    font-size: .9rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    cursor: pointer;
    transition: all .15s ease;
}


.btn-secondary[b-j8eewa9c8y] {
    background: var(--primary-foreground);
    border: 1px solid var(--border);
    color: #374151;
}

    .btn-secondary:hover[b-j8eewa9c8y] {
        background: #f3f4f6;
    }

    .btn-secondary:disabled[b-j8eewa9c8y] {
        opacity: .5;
        cursor: not-allowed;
    }

.btn-primary[b-j8eewa9c8y] {
    background: var(--primary);
    color: var(--primary-foreground);
    border: none;
}

    .btn-primary:hover[b-j8eewa9c8y] {
        background: #294d5be6;
    }

.btn-icon[b-j8eewa9c8y] {
    width: 16px;
    height: 16px;
}
/* _content/WebappExplorer/Components/Tour/TourInfoCard.razor.rz.scp.css */
.tour-card[b-j39vm2fmsl] {
    background: var(--card);
    border-radius: 1rem;
    padding: 1.25rem;
    margin-top: -3.75rem;
    border: 1px solid var(--border);
    box-shadow: 0 10px 20px rgba(0,0,0,0.06);
    margin-bottom: 1.5rem;
    position: relative;
    z-index: 10;
}

.tour-title[b-j39vm2fmsl] {
    font-family: var(--font-serif);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--foreground);
    margin-bottom: .4rem;
}

.tour-subtitle[b-j39vm2fmsl] {
    font-size: .9rem;
    color: var(--muted-foreground);
    margin-bottom: 1rem;
}

.tour-grid[b-j39vm2fmsl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
    font-size: .85rem;
}

.tour-item[b-j39vm2fmsl] {
    display: flex;
    align-items: center;
    gap: .5rem;
    color: var(--muted-foreground);
}

.tour-icon[b-j39vm2fmsl] {
    width: 16px;
    height: 16px;
    color: var(--primary);
}
