body {
    user-select: none; /* Prevent text selection like a native app */
    -webkit-tap-highlight-color: transparent;
}

.card {
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.modal.bottom-sheet {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.switch label input[type=checkbox]:checked+.lever {
    background-color: #f48fb1; /* Pink to match FAB */
}
.switch label input[type=checkbox]:checked+.lever:after {
    background-color: #ff4081; 
}

/* Fix Webkit/Chrome ugly autofill background colors */
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
    -webkit-text-fill-color: #333 !important;
    transition: background-color 5000s ease-in-out 0s;
}

/* Extracted Inline Styles (LOW-02) */
.auth-container {
    margin-top: 5vh;
    padding-bottom: 50px;
}
.auth-card {
    padding: 15px;
}
.auth-title {
    font-weight: 500;
}
.auth-subtitle {
    margin-bottom: 25px;
}
.auth-btn {
    border-radius: 20px;
    width: 100%;
    margin-bottom: 15px;
}
.border-none {
    border-top: none !important;
}
.no-margin-bottom {
    margin-bottom: 0 !important;
}
.captcha-container {
    margin-top: 25px;
    padding: 10px;
    border: 1px dashed #bdbdbd;
    border-radius: 8px;
    background-color: #f9f9f9;
}
.captcha-title {
    margin-top: 0;
    font-weight: bold;
}
.captcha-icon {
    line-height: inherit;
}
.captcha-input {
    text-align: center;
    font-size: 1.2rem !important;
    font-weight: bold !important;
}
.captcha-label {
    width: 100%;
    text-align: center;
    transform: translateY(-25px);
}
.app-nav {
    position: sticky;
    top: 0;
    z-index: 999;
}
.nav-brand {
    font-size: 1.5rem !important;
}
.nav-brand-left {
    margin-left: 15px;
}
.sync-switch {
    margin-top: 2px;
    margin-right: 15px;
}
.offline-banner {
    padding: 5px;
    font-size: 12px;
}
.app-container {
    margin-top: 20px;
    padding-bottom: 80px;
}
.entry-meta {
    font-size: 0.8rem;
    padding: 10px 24px !important;
}
.entry-sync-icon {
    font-size: 1rem !important;
}