/* asistan/assets/css/app.css */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

:root {
    --safe-bottom: env(safe-area-inset-bottom, 20px);
    --safe-top: env(safe-area-inset-top, 20px);
}

* {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
}

input, textarea, select {
    user-select: text;
}

body {
    background-color: #0b0f19;
    color: #f1f5f9;
    min-height: 100vh;
    padding-bottom: calc(85px + var(--safe-bottom));
    overflow-x: hidden;
}

/* Glassmorphism & App Surfaces */
.glass-panel {
    background: rgba(17, 24, 39, 0.75);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.glass-card {
    background: rgba(30, 41, 59, 0.6);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.glass-nav {
    background: rgba(11, 15, 25, 0.88);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

/* Bottom Safe Area for iPhone */
.safe-padding-bottom {
    padding-bottom: calc(16px + var(--safe-bottom));
}

.safe-padding-top {
    padding-top: calc(12px + var(--safe-top));
}

/* Bottom Sheet Modal */
.bottom-sheet {
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.bottom-sheet.hidden {
    transform: translateY(100%);
    pointer-events: none;
}

/* Custom scrollbars */
::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}
::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
    border-radius: 9999px;
}
::-webkit-scrollbar-track {
    background: transparent;
}

/* Active tab state */
.nav-tab.active {
    color: #38bdf8;
}
.nav-tab.active svg {
    stroke: #38bdf8;
    filter: drop-shadow(0 0 8px rgba(56, 189, 248, 0.4));
}

/* Touch feedback */
.touch-btn:active {
    transform: scale(0.97);
    opacity: 0.9;
}
